Details

Time bar (total: 13.5s)

analyze379.0ms (2.8%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
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
Compiler

Compiled 20 to 12 computations (40% saved)

sample1.3s (9.5%)

Results
1.2s8256×body256valid
62.0ms496×body256infinite
Bogosity

preprocess77.0ms (0.6%)

Algorithm
egg-herbie
Rules
1882×associate-+l-
1124×associate-+r-
826×associate-*r*
824×associate-/l*
758×fma-def
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040273
1112273
2223273
3368273
4803273
51768273
63331273
76654273
044
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
3
Call 2
Inputs
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (-.f64 (*.f64 a c) (*.f64 b d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (-.f64 (*.f64 b a) (*.f64 c d)) (+.f64 (*.f64 a a) (*.f64 d d)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (+.f64 (*.f64 c c) (*.f64 a a)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (+.f64 (*.f64 b b) (*.f64 d d)))
(/.f64 (-.f64 (*.f64 d c) (*.f64 a b)) (+.f64 (*.f64 c c) (*.f64 b b)))
(/.f64 (-.f64 (*.f64 b d) (*.f64 a c)) (+.f64 (*.f64 d d) (*.f64 c c)))
Outputs
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 c c (*.f64 d d)))
(/.f64 (-.f64 (*.f64 a c) (*.f64 b d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (-.f64 (*.f64 c a) (*.f64 b d)) (fma.f64 c c (*.f64 d d)))
(/.f64 (fma.f64 c a (*.f64 d (neg.f64 b))) (fma.f64 c c (*.f64 d d)))
(/.f64 (-.f64 (*.f64 b a) (*.f64 c d)) (+.f64 (*.f64 a a) (*.f64 d d)))
(/.f64 (-.f64 (*.f64 b a) (*.f64 c d)) (fma.f64 a a (*.f64 d d)))
(/.f64 (-.f64 (*.f64 b a) (*.f64 c d)) (fma.f64 d d (*.f64 a a)))
(/.f64 (fma.f64 d (neg.f64 c) (*.f64 b a)) (fma.f64 a a (*.f64 d d)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (+.f64 (*.f64 c c) (*.f64 a a)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 c c (*.f64 a a)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 a a (*.f64 c c)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (+.f64 (*.f64 b b) (*.f64 d d)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 b b (*.f64 d d)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 d d (*.f64 b b)))
(/.f64 (-.f64 (*.f64 d c) (*.f64 a b)) (+.f64 (*.f64 c c) (*.f64 b b)))
(/.f64 (-.f64 (*.f64 c d) (*.f64 b a)) (fma.f64 c c (*.f64 b b)))
(/.f64 (-.f64 (*.f64 c d) (*.f64 b a)) (fma.f64 b b (*.f64 c c)))
(/.f64 (fma.f64 c d (neg.f64 (*.f64 b a))) (fma.f64 c c (*.f64 b b)))
(/.f64 (-.f64 (*.f64 b d) (*.f64 a c)) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 (-.f64 (*.f64 b d) (*.f64 c a)) (fma.f64 c c (*.f64 d d)))
(/.f64 (fma.f64 c (neg.f64 a) (*.f64 b d)) (fma.f64 c c (*.f64 d d)))
(/.f64 (fma.f64 b d (*.f64 c (neg.f64 a))) (fma.f64 c c (*.f64 d d)))
Compiler

Compiled 23 to 15 computations (34.8% saved)

simplify81.0ms (0.6%)

Algorithm
egg-herbie
Rules
1536×times-frac
956×associate-/r/
924×distribute-lft-neg-in
860×distribute-rgt-neg-in
752×fma-def
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01339
12839
25239
38439
415939
529839
647939
775739
8145739
9230339
10300439
11478239
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Outputs
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 c c (*.f64 d d)))

eval0.0ms (0%)

Compiler

Compiled 33 to 13 computations (60.6% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Accurracy
60.4%
Counts
3 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
60.4%
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Compiler

Compiled 19 to 11 computations (42.1% saved)

localize13.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
99.6%
(-.f64 (*.f64 b c) (*.f64 a d))
61.1%
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Compiler

Compiled 49 to 11 computations (77.6% saved)

series29.0ms (0.2%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
1.0ms
b
@0
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
1.0ms
a
@inf
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
1.0ms
b
@-inf
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
1.0ms
a
@0
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
1.0ms
b
@inf
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))

rewrite190.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
1870×associate-*l/
1790×associate-/r*
408×associate-+l+
318×add-sqr-sqrt
314×pow1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01358
129556
2444056
Stop Event
node limit
Counts
2 → 198
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(-.f64 (*.f64 b c) (*.f64 a d))
Outputs
(((+.f64 (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c)) (neg.f64 (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a d) (pow.f64 (hypot.f64 c d) 2))) (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (/.f64 1 (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d))) (*.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d))) 2) (*.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) 2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) 2) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d) 2)) (-.f64 (*.f64 b c) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d))) (/.f64 -1 (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d) 2)) 2)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (-.f64 (pow.f64 c 4) (pow.f64 d 4))) (-.f64 (*.f64 c c) (*.f64 d d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (+.f64 (pow.f64 c 6) (pow.f64 d 6))) (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (pow.f64 (*.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) 1) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) 2) 1) (/.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) 2) (hypot.f64 c d)) (/.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)) 2) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) 3) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 3) 1/3) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) 2) (-.f64 (*.f64 b c) (*.f64 a d))) -1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d)) (neg.f64 (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 3)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) 1)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))
(((+.f64 (*.f64 b c) (*.f64 a (neg.f64 d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (*.f64 (*.f64 a (neg.f64 d)) 1)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 a) d (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 a) d (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (neg.f64 a) d (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 a) d (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (neg.f64 a) d (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 a (neg.f64 d)) (*.f64 b c)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (neg.f64 a) d (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 a d) (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 d) a (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 b c)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (-.f64 (*.f64 b c) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (*.f64 b c)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (neg.f64 d) a (*.f64 a d)) 1) (-.f64 (*.f64 b c) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 a) d (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a (neg.f64 d)) 1 (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (*.f64 a (neg.f64 d))) (*.f64 a d)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (neg.f64 d) a (*.f64 a d)) (*.f64 b c)) (*.f64 a (neg.f64 d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (neg.f64 d) a (*.f64 a d)) (*.f64 b c)) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (neg.f64 d) a (*.f64 a d)) (*.f64 b c)) (*.f64 (*.f64 a (neg.f64 d)) 1)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 b c) (exp.f64 (log1p.f64 (*.f64 a d)))) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d))) 2) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 a d) 2)) (/.f64 1 (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a d)) (sqrt.f64 (*.f64 b c))) (-.f64 (sqrt.f64 (*.f64 b c)) (sqrt.f64 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 2) (pow.f64 (*.f64 a d) 2))) (neg.f64 (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 3) (pow.f64 (*.f64 a d) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d)))) (-.f64 (*.f64 b c) (*.f64 a (neg.f64 d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) (-.f64 (*.f64 b c) (+.f64 (*.f64 a d) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 a (neg.f64 d)) 3)) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d))) (*.f64 (*.f64 b c) (*.f64 a (neg.f64 d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) (*.f64 a d)) 3) (pow.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 3)) (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 a d) 2)) 1) (fma.f64 b c (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 a d) 3)) 1) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 a d) 2))) 1) (neg.f64 (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 a d) 3))) 1) (neg.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d)))) 1) (-.f64 (*.f64 b c) (*.f64 a (neg.f64 d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 (*.f64 b c) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) 1) (-.f64 (*.f64 b c) (+.f64 (*.f64 a d) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 a (neg.f64 d)) 3)) 1) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d))) (*.f64 (*.f64 b c) (*.f64 a (neg.f64 d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 (*.f64 b c) (*.f64 a d)) 3) (pow.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 3)) 1) (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 a d) 2))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 a d) 3))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 a d) 2))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2)) (cbrt.f64 (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 a d) 3))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2)) (cbrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a d) 2))) (/.f64 1 (fma.f64 b c (*.f64 a d)))) (+.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 b c) 2))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 a d) 2) 3)) (/.f64 1 (fma.f64 b c (*.f64 a d)))) (+.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 3))) (/.f64 1 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 a d) 3) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (+.f64 (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 b c) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 a d) 2)) 1) (fma.f64 b c (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 a d) 2)) (sqrt.f64 (fma.f64 b c (*.f64 a d)))) (sqrt.f64 (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (cbrt.f64 (fma.f64 b c (*.f64 a d))) (cbrt.f64 (fma.f64 b c (*.f64 a d))))) (cbrt.f64 (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 a d) 3)) 1) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 a d) 3)) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d)) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d))) 2) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d))) 3) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d)) 3) 1/3) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d)) 2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d)) 3)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d))) 1)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c (*.f64 a (neg.f64 d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c b (*.f64 a (neg.f64 d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a (neg.f64 d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c)) (sqrt.f64 (*.f64 b c)) (*.f64 a (neg.f64 d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (fma.f64 (neg.f64 d) a (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c)) 2) (cbrt.f64 (*.f64 b c)) (*.f64 a (neg.f64 d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d))) 2) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (fma.f64 (neg.f64 d) a (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (*.f64 b c) (*.f64 a d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify232.0ms (1.7%)

Algorithm
egg-herbie
Rules
1190×+-commutative
942×associate-+l-
812×fma-def
734×associate-+r-
650×associate-/l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
051114964
1145913060
2613912816
Stop Event
node limit
Counts
294 → 313
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))))
(*.f64 -1 (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(*.f64 c b)
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(*.f64 c b)
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(*.f64 -1 (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(*.f64 c b)
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(*.f64 c b)
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(*.f64 c b)
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(*.f64 -1 (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(*.f64 -1 (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(*.f64 c b)
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(*.f64 -1 (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(*.f64 -1 (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(+.f64 (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c)) (neg.f64 (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c)))
(-.f64 (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))) 1)
(*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (/.f64 1 (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 1)
(*.f64 1 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (*.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (*.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) 2) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 2)) (-.f64 (*.f64 b c) (*.f64 a d)))
(*.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 -1 (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (-.f64 (pow.f64 c 4) (pow.f64 d 4))) (-.f64 (*.f64 c c) (*.f64 d d)))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (pow.f64 c 6) (pow.f64 d 6))) (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (pow.f64 (*.f64 c d) 2))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 1) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) 1) (/.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (hypot.f64 c d)) (/.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))
(pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 1)
(pow.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)) 2)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) 3)
(pow.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 3) 1/3)
(pow.f64 (/.f64 (pow.f64 (hypot.f64 c d) 2) (-.f64 (*.f64 b c) (*.f64 a d))) -1)
(neg.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (neg.f64 (pow.f64 (hypot.f64 c d) 2))))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 2))
(log.f64 (exp.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 3))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))
(exp.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) 1))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))
(+.f64 (*.f64 b c) (*.f64 a (neg.f64 d)))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (*.f64 b c) (*.f64 (*.f64 a (neg.f64 d)) 1))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (*.f64 a (neg.f64 d)) (*.f64 b c))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 a d) (-.f64 (*.f64 b c) (*.f64 a d))))
(+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d)))
(+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 b c))
(+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (-.f64 (*.f64 b c) (*.f64 a d)))
(+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (*.f64 b c))
(+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (-.f64 (*.f64 b c) (*.f64 a d)))
(+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d)))
(+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d)))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d)))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d)))
(+.f64 (+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (*.f64 a (neg.f64 d))) (*.f64 a d))
(+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (*.f64 b c)) (*.f64 a (neg.f64 d)))
(+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (*.f64 b c)) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (*.f64 b c)) (*.f64 (*.f64 a (neg.f64 d)) 1))
(+.f64 (-.f64 (*.f64 b c) (exp.f64 (log1p.f64 (*.f64 a d)))) 1)
(*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 1)
(*.f64 1 (-.f64 (*.f64 b c) (*.f64 a d)))
(*.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (/.f64 1 (fma.f64 b c (*.f64 a d))))
(*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(*.f64 (+.f64 (sqrt.f64 (*.f64 a d)) (sqrt.f64 (*.f64 b c))) (-.f64 (sqrt.f64 (*.f64 b c)) (sqrt.f64 (*.f64 a d))))
(/.f64 1 (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (neg.f64 (fma.f64 b c (*.f64 a d))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d)))) (-.f64 (*.f64 b c) (*.f64 a (neg.f64 d))))
(/.f64 (-.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) (-.f64 (*.f64 b c) (+.f64 (*.f64 a d) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(/.f64 (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a (neg.f64 d)) 3)) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d))) (*.f64 (*.f64 b c) (*.f64 a (neg.f64 d))))))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3) (pow.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 3)) (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) 1) (fma.f64 b c (*.f64 a d)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) 1) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) 1) (neg.f64 (fma.f64 b c (*.f64 a d))))
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) 1) (neg.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d)))) 1) (-.f64 (*.f64 b c) (*.f64 a (neg.f64 d))))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) 1) (-.f64 (*.f64 b c) (+.f64 (*.f64 a d) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a (neg.f64 d)) 3)) 1) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d))) (*.f64 (*.f64 b c) (*.f64 a (neg.f64 d))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3) (pow.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 3)) 1) (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (fma.f64 b c (*.f64 a d))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2)) (cbrt.f64 (fma.f64 b c (*.f64 a d))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2)) (cbrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a d) 2))) (/.f64 1 (fma.f64 b c (*.f64 a d)))) (+.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 b c) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 a d) 2) 3)) (/.f64 1 (fma.f64 b c (*.f64 a d)))) (+.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 3))) (/.f64 1 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)))
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 a d) 3) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (+.f64 (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 b c) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) 1) (fma.f64 b c (*.f64 a d)))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (sqrt.f64 (fma.f64 b c (*.f64 a d)))) (sqrt.f64 (fma.f64 b c (*.f64 a d))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (cbrt.f64 (fma.f64 b c (*.f64 a d))) (cbrt.f64 (fma.f64 b c (*.f64 a d))))) (cbrt.f64 (fma.f64 b c (*.f64 a d))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) 1) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 1)
(pow.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2)
(pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 3)
(pow.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3) 1/3)
(sqrt.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2))
(log.f64 (exp.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(log.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 b c) (*.f64 a d)))))
(cbrt.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3))
(expm1.f64 (log1p.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(exp.f64 (log.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 1))
(log1p.f64 (expm1.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(fma.f64 b c (*.f64 a (neg.f64 d)))
(fma.f64 c b (*.f64 a (neg.f64 d)))
(fma.f64 1 (*.f64 b c) (*.f64 a (neg.f64 d)))
(fma.f64 1 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(fma.f64 (sqrt.f64 (*.f64 b c)) (sqrt.f64 (*.f64 b c)) (*.f64 a (neg.f64 d)))
(fma.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 b c)) 2) (cbrt.f64 (*.f64 b c)) (*.f64 a (neg.f64 d)))
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (fma.f64 (neg.f64 d) a (*.f64 a d)))
Outputs
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) (neg.f64 d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b)))
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a)))
(+.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (-.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 3)) a) (/.f64 a d)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))))
(+.f64 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a)) (+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (neg.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)))))
(+.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)) (-.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 3)) a) (/.f64 a d)))
(-.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (-.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 3)) a)))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (/.f64 (*.f64 a d) (*.f64 c c)) (/.f64 b c))
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c)))
(fma.f64 -1 (/.f64 (*.f64 a d) (*.f64 c c)) (fma.f64 -1 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 b c)))
(-.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (*.f64 (/.f64 d c) (/.f64 a c)))
(-.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))))
(fma.f64 -1 (/.f64 (*.f64 a d) (*.f64 c c)) (+.f64 (fma.f64 -1 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 b c)) (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4))))
(+.f64 (-.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3)))
(-.f64 (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3)) (-.f64 (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b) (-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (/.f64 (*.f64 a d) (*.f64 c c)) (/.f64 b c))
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c)))
(fma.f64 -1 (/.f64 (*.f64 a d) (*.f64 c c)) (fma.f64 -1 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 b c)))
(-.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (*.f64 (/.f64 d c) (/.f64 a c)))
(-.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))))
(fma.f64 -1 (/.f64 (*.f64 a d) (*.f64 c c)) (+.f64 (fma.f64 -1 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 b c)) (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4))))
(+.f64 (-.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3)))
(-.f64 (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3)) (-.f64 (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b) (-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) (neg.f64 d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) (neg.f64 d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c))))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (/.f64 (*.f64 a d) (*.f64 c c)) (/.f64 b c))
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c)))
(fma.f64 -1 (/.f64 (*.f64 a d) (*.f64 c c)) (fma.f64 -1 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 b c)))
(-.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (*.f64 (/.f64 d c) (/.f64 a c)))
(-.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))))
(fma.f64 -1 (/.f64 (*.f64 a d) (*.f64 c c)) (+.f64 (fma.f64 -1 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 b c)) (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4))))
(+.f64 (-.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3)))
(-.f64 (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3)) (-.f64 (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b) (-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))))
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b)))
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a)))
(+.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (-.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 3)) a) (/.f64 a d)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))))
(+.f64 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a)) (+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (neg.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)))))
(+.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)) (-.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 3)) a) (/.f64 a d)))
(-.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (-.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 3)) a)))
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b)))
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a)))
(+.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (-.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 3)) a) (/.f64 a d)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))))
(+.f64 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a)) (+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (neg.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)))))
(+.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)) (-.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 3)) a) (/.f64 a d)))
(-.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (-.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 3)) a)))
(*.f64 -1 (*.f64 a d))
(*.f64 a (neg.f64 d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 c b)
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 c b)
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 -1 (*.f64 a d))
(*.f64 a (neg.f64 d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 c b)
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 c b)
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 c b)
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 -1 (*.f64 a d))
(*.f64 a (neg.f64 d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 -1 (*.f64 a d))
(*.f64 a (neg.f64 d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 c b)
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 -1 (*.f64 a d))
(*.f64 a (neg.f64 d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 -1 (*.f64 a d))
(*.f64 a (neg.f64 d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 c b) (*.f64 -1 (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c)) (neg.f64 (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c)))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(-.f64 (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))) 1)
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (/.f64 1 (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 1)
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 1 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (*.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (pow.f64 (hypot.f64 c d) 2))))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (*.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (pow.f64 (hypot.f64 c d) 2))))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) 2))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) 2) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 2)) (-.f64 (*.f64 b c) (*.f64 a d)))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 -1 (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (neg.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 -1 (pow.f64 (hypot.f64 c d) 2)))
(/.f64 (neg.f64 (-.f64 (*.f64 a d) (*.f64 c b))) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(/.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (-.f64 (pow.f64 c 4) (pow.f64 d 4))) (-.f64 (*.f64 c c) (*.f64 d d)))
(*.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (-.f64 (pow.f64 c 4) (pow.f64 d 4))) (-.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (/.f64 (-.f64 (pow.f64 c 4) (pow.f64 d 4)) (-.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (pow.f64 c 6) (pow.f64 d 6))) (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (pow.f64 (*.f64 c d) 2))))
(*.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (+.f64 (pow.f64 c 6) (pow.f64 d 6))) (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (pow.f64 (*.f64 d c) 2))))
(*.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (+.f64 (pow.f64 c 6) (pow.f64 d 6))) (-.f64 (pow.f64 d 4) (-.f64 (pow.f64 (*.f64 d c) 2) (pow.f64 c 4))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 1) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(/.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) 1) (/.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (hypot.f64 c d)) (/.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 1)
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(pow.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)) 2)
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) 3)
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(pow.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 3) 1/3)
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(pow.f64 (/.f64 (pow.f64 (hypot.f64 c d) 2) (-.f64 (*.f64 b c) (*.f64 a d))) -1)
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(neg.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (neg.f64 (pow.f64 (hypot.f64 c d) 2))))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 2))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 2))
(fabs.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))
(log.f64 (exp.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)))))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) 3))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(exp.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))) 1))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))))
(-.f64 (*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) (/.f64 a (/.f64 (pow.f64 (hypot.f64 c d) 2) d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(+.f64 (*.f64 b c) (*.f64 a (neg.f64 d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 b c) (*.f64 (*.f64 a (neg.f64 d)) 1))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(fma.f64 c b (fma.f64 a (neg.f64 d) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(fma.f64 c b (-.f64 (*.f64 3 (*.f64 0 (*.f64 a d))) (*.f64 a d)))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (*.f64 a d))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 c b (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 c b (*.f64 0 (*.f64 a d))) (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (*.f64 a d))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 c b (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 c b (*.f64 0 (*.f64 a d))) (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))))
(+.f64 (*.f64 b c) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (*.f64 a d))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 c b (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 c b (*.f64 0 (*.f64 a d))) (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)))
(+.f64 (*.f64 b c) (+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 b c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (*.f64 a d))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 c b (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 c b (*.f64 0 (*.f64 a d))) (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (*.f64 a d))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 c b (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 c b (*.f64 0 (*.f64 a d))) (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (*.f64 a d))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 c b (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 c b (*.f64 0 (*.f64 a d))) (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(fma.f64 c b (fma.f64 a (neg.f64 d) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(fma.f64 c b (-.f64 (*.f64 3 (*.f64 0 (*.f64 a d))) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(fma.f64 c b (fma.f64 a (neg.f64 d) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(fma.f64 c b (-.f64 (*.f64 3 (*.f64 0 (*.f64 a d))) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 4 (*.f64 0 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(fma.f64 c b (fma.f64 a (neg.f64 d) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(fma.f64 c b (-.f64 (*.f64 3 (*.f64 0 (*.f64 a d))) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(fma.f64 c b (fma.f64 a (neg.f64 d) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(fma.f64 c b (-.f64 (*.f64 3 (*.f64 0 (*.f64 a d))) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(fma.f64 c b (fma.f64 a (neg.f64 d) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(fma.f64 c b (-.f64 (*.f64 3 (*.f64 0 (*.f64 a d))) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(+.f64 (*.f64 2 (*.f64 0 (*.f64 a d))) (+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 c b (*.f64 0 (*.f64 a d)))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (-.f64 (*.f64 c b) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(+.f64 (+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (*.f64 0 (*.f64 a d))) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (-.f64 (*.f64 c b) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(fma.f64 c b (fma.f64 a (neg.f64 d) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(fma.f64 c b (-.f64 (*.f64 3 (*.f64 0 (*.f64 a d))) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(fma.f64 c b (fma.f64 a (neg.f64 d) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(fma.f64 c b (-.f64 (*.f64 3 (*.f64 0 (*.f64 a d))) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(fma.f64 c b (fma.f64 a (neg.f64 d) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(fma.f64 c b (-.f64 (*.f64 3 (*.f64 0 (*.f64 a d))) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(+.f64 (*.f64 2 (*.f64 0 (*.f64 a d))) (+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 c b (*.f64 0 (*.f64 a d)))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (-.f64 (*.f64 c b) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(fma.f64 2 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(+.f64 (+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (*.f64 0 (*.f64 a d))) (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (+.f64 (*.f64 0 (*.f64 a d)) (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d))))) (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(+.f64 (+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (*.f64 0 (*.f64 a d))) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (-.f64 (*.f64 c b) (*.f64 3 (*.f64 0 (*.f64 a d)))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(-.f64 (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 2 (*.f64 0 (*.f64 a d)) (*.f64 c b)))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (fma.f64 b c (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))
(+.f64 (+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (*.f64 0 (*.f64 a d))) (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (+.f64 (*.f64 0 (*.f64 a d)) (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d))))) (fma.f64 c b (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(fma.f64 2 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (*.f64 a (neg.f64 d)) (*.f64 b c))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (*.f64 a d))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 c b (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 c b (*.f64 0 (*.f64 a d))) (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 b c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (*.f64 a d))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 c b (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 c b (*.f64 0 (*.f64 a d))) (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)))
(+.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 a d) (-.f64 (*.f64 b c) (*.f64 a d))))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 b c))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (-.f64 (*.f64 b c) (*.f64 a d)))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (*.f64 (*.f64 a (neg.f64 d)) 1) (*.f64 b c))
(-.f64 (*.f64 c b) (*.f64 a d))
(+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1) (-.f64 (*.f64 b c) (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 (neg.f64 a) d (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))) (*.f64 a d))
(+.f64 (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))) (fma.f64 c b (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 c b (*.f64 0 (*.f64 a d))) (*.f64 (sqrt.f64 (*.f64 a d)) (neg.f64 (sqrt.f64 (*.f64 a d)))))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)) (-.f64 (*.f64 b c) (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))) (*.f64 a d))
(+.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)) (fma.f64 c b (*.f64 0 (*.f64 a d))))
(+.f64 (fma.f64 c b (*.f64 0 (*.f64 a d))) (*.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2)))
(+.f64 (+.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (*.f64 a (neg.f64 d))) (*.f64 a d))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (*.f64 b c)) (*.f64 a (neg.f64 d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (*.f64 b c)) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(-.f64 (fma.f64 b c (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 a d))
(fma.f64 2 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))
(+.f64 (+.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (*.f64 b c)) (*.f64 (*.f64 a (neg.f64 d)) 1))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(+.f64 (-.f64 (*.f64 b c) (exp.f64 (log1p.f64 (*.f64 a d)))) 1)
(+.f64 1 (-.f64 (*.f64 c b) (exp.f64 (log1p.f64 (*.f64 a d)))))
(-.f64 (*.f64 c b) (expm1.f64 (log1p.f64 (*.f64 a d))))
(*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 1)
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 1 (-.f64 (*.f64 b c) (*.f64 a d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(-.f64 (*.f64 c b) (*.f64 a d))
(*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (/.f64 1 (fma.f64 b c (*.f64 a d))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 a d (*.f64 c b)))
(*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))
(*.f64 (+.f64 (sqrt.f64 (*.f64 a d)) (sqrt.f64 (*.f64 b c))) (-.f64 (sqrt.f64 (*.f64 b c)) (sqrt.f64 (*.f64 a d))))
(*.f64 (+.f64 (sqrt.f64 (*.f64 a d)) (sqrt.f64 (*.f64 c b))) (-.f64 (sqrt.f64 (*.f64 c b)) (sqrt.f64 (*.f64 a d))))
(/.f64 1 (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 a d (*.f64 c b)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 a d (*.f64 c b)))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (neg.f64 (fma.f64 b c (*.f64 a d))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 a d (*.f64 c b)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d)))) (-.f64 (*.f64 b c) (*.f64 a (neg.f64 d))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 a d (*.f64 c b)))
(/.f64 (-.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) (-.f64 (*.f64 b c) (+.f64 (*.f64 a d) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(/.f64 (-.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) (-.f64 (*.f64 c b) (fma.f64 a d (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2) (*.f64 (*.f64 0 (*.f64 a d)) (*.f64 0 (*.f64 a d)))) (-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d)))))
(/.f64 (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a (neg.f64 d)) 3)) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d))) (*.f64 (*.f64 b c) (*.f64 a (neg.f64 d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3) (pow.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 3)) (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 3) (pow.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 3)) (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (-.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d))))))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 3) (pow.f64 (*.f64 0 (*.f64 a d)) 3)) (fma.f64 (*.f64 0 (*.f64 a d)) (+.f64 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 a d) (*.f64 c b))) (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2)))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 3) (pow.f64 (*.f64 0 (*.f64 a d)) 3)) (fma.f64 (*.f64 0 (*.f64 a d)) (-.f64 (fma.f64 a d (*.f64 0 (*.f64 a d))) (*.f64 c b)) (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) 1) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 a d (*.f64 c b)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) 1) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) 1) (neg.f64 (fma.f64 b c (*.f64 a d))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 a d (*.f64 c b)))
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) 1) (neg.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d)))) 1) (-.f64 (*.f64 b c) (*.f64 a (neg.f64 d))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 a d (*.f64 c b)))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) 1) (-.f64 (*.f64 b c) (+.f64 (*.f64 a d) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(/.f64 (-.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) (-.f64 (*.f64 c b) (fma.f64 a d (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2) (*.f64 (*.f64 0 (*.f64 a d)) (*.f64 0 (*.f64 a d)))) (-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a (neg.f64 d)) 3)) 1) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d))) (*.f64 (*.f64 b c) (*.f64 a (neg.f64 d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))
(/.f64 (*.f64 (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3) (pow.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 3)) 1) (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 3) (pow.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 3)) (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (-.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d))))))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 3) (pow.f64 (*.f64 0 (*.f64 a d)) 3)) (fma.f64 (*.f64 0 (*.f64 a d)) (+.f64 (*.f64 0 (*.f64 a d)) (-.f64 (*.f64 a d) (*.f64 c b))) (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2)))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 3) (pow.f64 (*.f64 0 (*.f64 a d)) 3)) (fma.f64 (*.f64 0 (*.f64 a d)) (-.f64 (fma.f64 a d (*.f64 0 (*.f64 a d))) (*.f64 c b)) (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2)))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (fma.f64 b c (*.f64 a d))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2))) (/.f64 (sqrt.f64 (fma.f64 b c (*.f64 a d))) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2))) (sqrt.f64 (fma.f64 a d (*.f64 c b)))) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (sqrt.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d)))))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3))) (sqrt.f64 (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2)) (cbrt.f64 (fma.f64 b c (*.f64 a d))))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2))) (/.f64 (cbrt.f64 (fma.f64 b c (*.f64 a d))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2)))
(*.f64 (/.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2))) (cbrt.f64 (fma.f64 a d (*.f64 c b)))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2)) (cbrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3))) (/.f64 (cbrt.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d)))))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2)))
(*.f64 (/.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3))) (cbrt.f64 (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a d) 2))) (/.f64 1 (fma.f64 b c (*.f64 a d)))) (+.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 b c) 2)))
(/.f64 (*.f64 (/.f64 1 (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 4) (pow.f64 (*.f64 a d) 4))) (+.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 4) (pow.f64 (*.f64 a d) 4)) (fma.f64 a d (*.f64 c b))) (+.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 a d) 2) 3)) (/.f64 1 (fma.f64 b c (*.f64 a d)))) (+.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c b) 2) 3) (pow.f64 (pow.f64 (*.f64 a d) 2) 3)) (/.f64 (+.f64 (+.f64 (pow.f64 (*.f64 c b) 4) (pow.f64 (*.f64 a d) 4)) (*.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2))) (/.f64 1 (fma.f64 b c (*.f64 a d)))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 6) (pow.f64 (*.f64 a d) 6)) (fma.f64 a d (*.f64 c b))) (fma.f64 (pow.f64 (*.f64 a d) 2) (+.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (pow.f64 (*.f64 c b) 4)))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 3))) (/.f64 1 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)))
(/.f64 (*.f64 (/.f64 1 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d)))))) (-.f64 (pow.f64 (*.f64 c b) 6) (pow.f64 (*.f64 a d) 6))) (+.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 6) (pow.f64 (*.f64 a d) 6)) (*.f64 (+.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2))))
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 a d) 3) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (+.f64 (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 b c) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c b) 3) 3) (pow.f64 (pow.f64 (*.f64 a d) 3) 3)) (/.f64 (+.f64 (+.f64 (pow.f64 (*.f64 c b) 6) (pow.f64 (*.f64 a d) 6)) (*.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3))) (/.f64 1 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c b) 3) 3) (pow.f64 (pow.f64 (*.f64 a d) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 c b) 6) (fma.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 6))) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) 1) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 a d (*.f64 c b)))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (sqrt.f64 (fma.f64 b c (*.f64 a d)))) (sqrt.f64 (fma.f64 b c (*.f64 a d))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 a d (*.f64 c b)))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (cbrt.f64 (fma.f64 b c (*.f64 a d))) (cbrt.f64 (fma.f64 b c (*.f64 a d))))) (cbrt.f64 (fma.f64 b c (*.f64 a d))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 b c (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (fma.f64 a d (*.f64 c b)))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) 1) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 a (*.f64 d (fma.f64 a d (*.f64 c b))) (pow.f64 (*.f64 c b) 2)))
(pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 1)
(-.f64 (*.f64 c b) (*.f64 a d))
(pow.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2)
(-.f64 (*.f64 c b) (*.f64 a d))
(pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 3)
(-.f64 (*.f64 c b) (*.f64 a d))
(pow.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3) 1/3)
(-.f64 (*.f64 c b) (*.f64 a d))
(sqrt.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2))
(sqrt.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2))
(fabs.f64 (-.f64 (*.f64 c b) (*.f64 a d)))
(log.f64 (exp.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(-.f64 (*.f64 c b) (*.f64 a d))
(log.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 b c) (*.f64 a d)))))
(-.f64 (*.f64 c b) (*.f64 a d))
(cbrt.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3))
(-.f64 (*.f64 c b) (*.f64 a d))
(expm1.f64 (log1p.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(-.f64 (*.f64 c b) (*.f64 a d))
(exp.f64 (log.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(-.f64 (*.f64 c b) (*.f64 a d))
(exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 1))
(-.f64 (*.f64 c b) (*.f64 a d))
(log1p.f64 (expm1.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(-.f64 (*.f64 c b) (*.f64 a d))
(fma.f64 b c (*.f64 a (neg.f64 d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(fma.f64 c b (*.f64 a (neg.f64 d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(fma.f64 1 (*.f64 b c) (*.f64 a (neg.f64 d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(fma.f64 1 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(fma.f64 (sqrt.f64 (*.f64 b c)) (sqrt.f64 (*.f64 b c)) (*.f64 a (neg.f64 d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(fma.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 b c)) 2) (cbrt.f64 (*.f64 b c)) (*.f64 a (neg.f64 d)))
(-.f64 (*.f64 c b) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (fma.f64 (neg.f64 d) a (*.f64 a d)))
(-.f64 (fma.f64 b c (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 a d))
(-.f64 (*.f64 c b) (fma.f64 a d (*.f64 0 (*.f64 a d))))

eval106.0ms (0.8%)

Compiler

Compiled 9365 to 2234 computations (76.1% saved)

prune76.0ms (0.6%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New30211313
Fresh000
Picked101
Done000
Total30311314
Accurracy
99.6%
Counts
314 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
60.3%
(/.f64 (+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d))))) (+.f64 (*.f64 c c) (*.f64 d d)))
40.1%
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
39.5%
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
42.2%
(/.f64 (neg.f64 a) d)
40.0%
(/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))
42.5%
(/.f64 b c)
42.5%
(/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) (neg.f64 d)))
63.6%
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
50.3%
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
49.8%
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
74.2%
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
Compiler

Compiled 364 to 212 computations (41.8% saved)

localize16.0ms (0.1%)

Local Accuracy

Found 4 expressions with local accuracy:

NewAccuracyProgram
100.0%
(/.f64 1 (hypot.f64 c d))
99.6%
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
99.6%
(-.f64 (*.f64 b c) (*.f64 a d))
75.9%
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))
Compiler

Compiled 58 to 15 computations (74.1% saved)

series13.0ms (0.1%)

Counts
3 → 120
Calls

30 calls:

TimeVariablePointExpression
3.0ms
c
@0
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))
1.0ms
b
@0
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))
1.0ms
c
@inf
(/.f64 1 (hypot.f64 c d))
1.0ms
a
@0
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))
0.0ms
d
@inf
(/.f64 1 (hypot.f64 c d))

rewrite262.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
1196×distribute-lft-in
962×associate-/l/
832×associate-/r/
376×associate-+l+
318×add-sqr-sqrt
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01487
130781
2436081
Stop Event
node limit
Counts
3 → 220
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
(/.f64 1 (hypot.f64 c d))
Outputs
(((+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 1 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) d (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 1 (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 1 (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (*.f64 a (neg.f64 d)) 1))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (*.f64 a (neg.f64 d))) (*.f64 (/.f64 b (hypot.f64 c d)) c)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 b (hypot.f64 c d)) c)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (hypot.f64 c d)) a)) (*.f64 (/.f64 b (hypot.f64 c d)) c)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (-.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (-.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (-.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (-.f64 1 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (/.f64 1 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d)) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d)) (-.f64 (*.f64 b c) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d))) (*.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) -1/2) (*.f64 (pow.f64 (hypot.f64 c d) -1/2) (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) -1/2) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (sqrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 2) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d))) 2) (*.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) -2)) (*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 c d))) (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d))) (/.f64 1 (neg.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -1/2)) (pow.f64 (hypot.f64 c d) -1/2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (cbrt.f64 (pow.f64 (hypot.f64 c d) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2)) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (sqrt.f64 (hypot.f64 c d))) (pow.f64 (hypot.f64 c d) -1/2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d)) 2)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (cbrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (neg.f64 (hypot.f64 c d))) -1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d) -1/2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (*.f64 (pow.f64 (hypot.f64 c d) -1/2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d))) (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) 2) (hypot.f64 c d)) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) 1) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (cbrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) 2) 1) (/.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) 2) (sqrt.f64 (hypot.f64 c d))) (/.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (sqrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) 2) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2))) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (-.f64 (*.f64 b c) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (*.f64 b c) (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (-.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (-.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (+.f64 (pow.f64 (pow.f64 (*.f64 b c) 2) 3) (pow.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) 3))) (-.f64 (+.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (*.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 a d) 2)) (/.f64 1 (hypot.f64 c d))) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (-.f64 (*.f64 b c) (*.f64 a d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 a d) 2)) (/.f64 1 (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (*.f64 b c) (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (hypot.f64 c d))) (-.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (-.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (hypot.f64 c d))) (+.f64 (pow.f64 (pow.f64 (*.f64 b c) 2) 3) (pow.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) 3))) (-.f64 (+.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (*.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 a d))) (-.f64 (*.f64 (*.f64 c c) (*.f64 c c)) (*.f64 (*.f64 d d) (*.f64 d d)))) (-.f64 (*.f64 c c) (*.f64 d d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 a d))) (+.f64 (pow.f64 (*.f64 c c) 3) (pow.f64 (*.f64 d d) 3))) (+.f64 (*.f64 (*.f64 c c) (*.f64 c c)) (-.f64 (*.f64 (*.f64 d d) (*.f64 d d)) (*.f64 (*.f64 c c) (*.f64 d d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 2) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 3) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3) 1/3) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) (-.f64 (*.f64 b c) (*.f64 a d))) -1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 a d)) (neg.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) 3)) (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) 3) (pow.f64 (hypot.f64 c d) 3))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 1)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)))) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (/.f64 (*.f64 b c) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (hypot.f64 c d)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) 2) (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) (-.f64 (*.f64 b c) (*.f64 a d))) (neg.f64 (neg.f64 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (sqrt.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d)) (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d))) (/.f64 (pow.f64 (hypot.f64 c d) 2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d))) (*.f64 (hypot.f64 c d) (/.f64 (hypot.f64 c d) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (sqrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) -1/2) (*.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))) (sqrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 2) (*.f64 (hypot.f64 c d) (cbrt.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d))) 2) (/.f64 (pow.f64 (hypot.f64 c d) 2) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d))) 2) (*.f64 (hypot.f64 c d) (/.f64 (hypot.f64 c d) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (fma.f64 b c (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) (-.f64 (*.f64 b c) (*.f64 a d))) (neg.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d)) (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) (neg.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d))) (*.f64 (hypot.f64 c d) (neg.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d))) (*.f64 (neg.f64 (hypot.f64 c d)) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 a d))) (neg.f64 (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (/.f64 (pow.f64 (hypot.f64 c d) 2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (/.f64 (pow.f64 (hypot.f64 c d) 2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (fma.f64 b c (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 (*.f64 b c) (*.f64 a d)))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (sqrt.f64 (neg.f64 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) -1) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) -1) (*.f64 (hypot.f64 c d) (neg.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (hypot.f64 c d) (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) (/.f64 1 (hypot.f64 c d))) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) (*.f64 a d)) (hypot.f64 c d))) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 a d) 2)) (/.f64 1 (hypot.f64 c d))) (*.f64 (hypot.f64 c d) (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (hypot.f64 c d))) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (hypot.f64 c d)) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (hypot.f64 c d))) (cbrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (sqrt.f64 (hypot.f64 c d))) (*.f64 (hypot.f64 c d) (sqrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 a d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (*.f64 (hypot.f64 c d) (cbrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d)) 2)) (*.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))) (cbrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (neg.f64 (fma.f64 b c (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (*.f64 (hypot.f64 c d) (neg.f64 (hypot.f64 c d))) (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (*.f64 (neg.f64 (hypot.f64 c d)) (hypot.f64 c d)) (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (neg.f64 (pow.f64 (hypot.f64 c d) 2)) (fma.f64 b c (*.f64 a d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (neg.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (*.f64 (hypot.f64 c d) (neg.f64 (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (*.f64 (neg.f64 (hypot.f64 c d)) (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (neg.f64 (pow.f64 (hypot.f64 c d) 2)) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d)))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (-.f64 (*.f64 b c) (*.f64 a (neg.f64 d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (-.f64 (*.f64 b c) (+.f64 (*.f64 a d) (fma.f64 (neg.f64 d) a (*.f64 a d)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (hypot.f64 c d)) c) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (*.f64 (hypot.f64 c d) (+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (fma.f64 b c (*.f64 a d))) (+.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 b c) 2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 a (neg.f64 d)) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d))) (*.f64 (*.f64 b c) (*.f64 a (neg.f64 d))))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) (*.f64 a d)) 3) (pow.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (hypot.f64 c d)) c) 3) (pow.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) 3)) (*.f64 (hypot.f64 c d) (+.f64 (+.f64 (*.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (*.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 a d) 2) 3)) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (fma.f64 b c (*.f64 a d))) (+.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 a d) 3) 3)) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (+.f64 (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 b c) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 3)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) 1) (*.f64 (neg.f64 (hypot.f64 c d)) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d))) -1) (*.f64 (neg.f64 (hypot.f64 c d)) (neg.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 a d)))) (*.f64 (neg.f64 (hypot.f64 c d)) (neg.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 a d) 2)) 1) (*.f64 (hypot.f64 c d) (*.f64 (fma.f64 b c (*.f64 a d)) (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 a d) 2)) -1) (*.f64 (hypot.f64 c d) (*.f64 (fma.f64 b c (*.f64 a d)) (neg.f64 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 a d) 3)) 1) (*.f64 (hypot.f64 c d) (*.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 a d) 3)) -1) (*.f64 (hypot.f64 c d) (*.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (neg.f64 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (hypot.f64 c d) (*.f64 (neg.f64 (hypot.f64 c d)) (fma.f64 b c (*.f64 a d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (hypot.f64 c d) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 (*.f64 b c) (*.f64 a d)))) (pow.f64 (hypot.f64 c d) 2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)) 2) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))) 3) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 3) 1/3) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 3)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) 3)) (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3) (pow.f64 (hypot.f64 c d) 3))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))) 1)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d)))) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d)) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) -1/2) (pow.f64 (hypot.f64 c d) -1/2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d))) (cbrt.f64 (pow.f64 (hypot.f64 c d) -2))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) -2)) (/.f64 1 (cbrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d))) -1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d)) -1) (pow.f64 (sqrt.f64 (hypot.f64 c d)) -1)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d)) 2) -1) (pow.f64 (cbrt.f64 (hypot.f64 c d)) -1)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) -1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d)) 1) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) -1/2) 2) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d))) 3) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) 3)) 1/3) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) 2) -1/2) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) -2)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d))))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) 3))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d)) -1)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d))) 1)) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d)))) #(struct:egraph-query ((/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify178.0ms (1.3%)

Algorithm
egg-herbie
Rules
1366×associate-/l*
1180×associate-/r*
904×*-commutative
596×+-commutative
440×distribute-lft-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
076521672
1248618996
Stop Event
node limit
Counts
340 → 445
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(*.f64 -1 a)
(+.f64 (/.f64 (*.f64 c b) d) (*.f64 -1 a))
(+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a))))
b
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 b (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(*.f64 -1 b)
(+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1 b))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b)))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
b
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 b (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(*.f64 -1 a)
(+.f64 (/.f64 (*.f64 c b) d) (*.f64 -1 a))
(+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a))))
a
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) a)
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (+.f64 a (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 1 d)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (/.f64 1 d))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (+.f64 (/.f64 1 d) (*.f64 3/8 (/.f64 (pow.f64 c 4) (pow.f64 d 5)))))
(+.f64 (*.f64 -5/16 (/.f64 (pow.f64 c 6) (pow.f64 d 7))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (+.f64 (/.f64 1 d) (*.f64 3/8 (/.f64 (pow.f64 c 4) (pow.f64 d 5))))))
(/.f64 1 c)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (/.f64 1 c))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (+.f64 (/.f64 1 c) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 d 4)) (*.f64 -1/4 (pow.f64 d 4))) (pow.f64 c 5)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (pow.f64 d 4)) (*.f64 -1/4 (pow.f64 d 4))))) (*.f64 1/8 (pow.f64 d 6))) (pow.f64 c 7))) (+.f64 (/.f64 1 c) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 d 4)) (*.f64 -1/4 (pow.f64 d 4))) (pow.f64 c 5))))))
(/.f64 -1 c)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (/.f64 1 c))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 d 4) (pow.f64 c 5))) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (pow.f64 c 5))))) (/.f64 1 c))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (pow.f64 d 4)) (*.f64 -1/4 (pow.f64 d 4)))) (pow.f64 c 7))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 d 4) (pow.f64 c 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 d 6) (pow.f64 c 7))) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (pow.f64 c 5))))))) (/.f64 1 c))
(/.f64 1 c)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (/.f64 1 c))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 d 4) (pow.f64 c 5))) (/.f64 1 c)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 d 4) (pow.f64 c 5))) (+.f64 (/.f64 1 c) (*.f64 -5/16 (/.f64 (pow.f64 d 6) (pow.f64 c 7))))))
(/.f64 1 d)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (/.f64 1 d))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 c 4)) (*.f64 -1/8 (pow.f64 c 4))) (pow.f64 d 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (/.f64 1 d)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/4 (pow.f64 c 4)) (*.f64 -1/8 (pow.f64 c 4))))) (*.f64 1/8 (pow.f64 c 6))) (pow.f64 d 7))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 c 4)) (*.f64 -1/8 (pow.f64 c 4))) (pow.f64 d 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (/.f64 1 d))))
(/.f64 -1 d)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (/.f64 1 d))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 c 4) (pow.f64 d 5))) (*.f64 -1/4 (/.f64 (pow.f64 c 4) (pow.f64 d 5))))) (/.f64 1 d))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (pow.f64 c 6) (pow.f64 d 7))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/4 (pow.f64 c 4)) (*.f64 -1/8 (pow.f64 c 4)))) (pow.f64 d 7))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 c 4) (pow.f64 d 5))) (*.f64 -1/4 (/.f64 (pow.f64 c 4) (pow.f64 d 5))))))) (/.f64 1 d))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 1 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a)))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 1 (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 1 (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d)))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (*.f64 a (neg.f64 d)) 1)))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d))) (*.f64 (/.f64 b (hypot.f64 c d)) c))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
(+.f64 (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 b (hypot.f64 c d)) c))
(+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
(+.f64 (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a)) (*.f64 (/.f64 b (hypot.f64 c d)) c))
(-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))
(-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (-.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (-.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) 1)
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (-.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (-.f64 1 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 1)
(*.f64 1 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 b c) (*.f64 a d)))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(*.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (*.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (hypot.f64 c d))))
(*.f64 (pow.f64 (hypot.f64 c d) -1/2) (*.f64 (pow.f64 (hypot.f64 c d) -1/2) (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (pow.f64 (hypot.f64 c d) -1/2) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (sqrt.f64 (hypot.f64 c d))))
(*.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 2) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (*.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (hypot.f64 c d))))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) -2)) (*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 c d))) (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (neg.f64 (hypot.f64 c d))))
(*.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -1/2)) (pow.f64 (hypot.f64 c d) -1/2))
(*.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (cbrt.f64 (pow.f64 (hypot.f64 c d) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 c d))))
(*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2)) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (sqrt.f64 (hypot.f64 c d))) (pow.f64 (hypot.f64 c d) -1/2))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (neg.f64 (hypot.f64 c d))) -1)
(*.f64 (*.f64 (pow.f64 (hypot.f64 c d) -1/2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (*.f64 (pow.f64 (hypot.f64 c d) -1/2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))))
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 c d))) (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (hypot.f64 c d)) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 1) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) 1) (/.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (sqrt.f64 (hypot.f64 c d))) (/.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (sqrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (/.f64 (hypot.f64 c d) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (/.f64 1 (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2))) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (-.f64 (*.f64 b c) (*.f64 a d)))
(*.f64 (/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (*.f64 b c) (*.f64 a d)))))
(*.f64 (/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (-.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (-.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))
(*.f64 (/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (+.f64 (pow.f64 (pow.f64 (*.f64 b c) 2) 3) (pow.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) 3))) (-.f64 (+.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (*.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (/.f64 1 (hypot.f64 c d))) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (-.f64 (*.f64 b c) (*.f64 a d)))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (/.f64 1 (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (*.f64 b c) (*.f64 a d)))))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (hypot.f64 c d))) (-.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (-.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (hypot.f64 c d))) (+.f64 (pow.f64 (pow.f64 (*.f64 b c) 2) 3) (pow.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) 3))) (-.f64 (+.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (*.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(*.f64 (/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 a d))) (-.f64 (*.f64 (*.f64 c c) (*.f64 c c)) (*.f64 (*.f64 d d) (*.f64 d d)))) (-.f64 (*.f64 c c) (*.f64 d d)))
(*.f64 (/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 a d))) (+.f64 (pow.f64 (*.f64 c c) 3) (pow.f64 (*.f64 d d) 3))) (+.f64 (*.f64 (*.f64 c c) (*.f64 c c)) (-.f64 (*.f64 (*.f64 d d) (*.f64 d d)) (*.f64 (*.f64 c c) (*.f64 d d)))))
(pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 1)
(pow.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 2)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 3)
(pow.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3) 1/3)
(pow.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))) -1)
(neg.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (neg.f64 (hypot.f64 c d))))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 2))
(log.f64 (exp.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3)))
(cbrt.f64 (/.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3) (pow.f64 (hypot.f64 c d) 3)))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(exp.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 1))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(+.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)))) 1)
(-.f64 (/.f64 (*.f64 b c) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (hypot.f64 c d))
(/.f64 1 (/.f64 (pow.f64 (hypot.f64 c d) 2) (-.f64 (*.f64 b c) (*.f64 a d))))
(/.f64 1 (/.f64 (hypot.f64 c d) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(/.f64 1 (*.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))) (neg.f64 (neg.f64 (hypot.f64 c d)))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 1 (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (sqrt.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))))))
(/.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))))
(/.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 (pow.f64 (hypot.f64 c d) 2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (*.f64 (hypot.f64 c d) (/.f64 (hypot.f64 c d) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (sqrt.f64 (hypot.f64 c d))))
(/.f64 (pow.f64 (hypot.f64 c d) -1/2) (*.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))) (sqrt.f64 (hypot.f64 c d))))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 2) (*.f64 (hypot.f64 c d) (cbrt.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))))))
(/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (/.f64 (pow.f64 (hypot.f64 c d) 2) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))))
(/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (*.f64 (hypot.f64 c d) (/.f64 (hypot.f64 c d) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (fma.f64 b c (*.f64 a d))))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (fma.f64 b c (*.f64 a d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))))
(/.f64 -1 (*.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))) (neg.f64 (hypot.f64 c d))))
(/.f64 -1 (*.f64 (neg.f64 (hypot.f64 c d)) (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d)))))
(/.f64 -1 (*.f64 (hypot.f64 c d) (neg.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))))))
(/.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (*.f64 (hypot.f64 c d) (neg.f64 (hypot.f64 c d))))
(/.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (*.f64 (neg.f64 (hypot.f64 c d)) (hypot.f64 c d)))
(/.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (neg.f64 (pow.f64 (hypot.f64 c d) 2)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (/.f64 (pow.f64 (hypot.f64 c d) 2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (/.f64 (pow.f64 (hypot.f64 c d) 2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (fma.f64 b c (*.f64 a d)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (sqrt.f64 (neg.f64 (hypot.f64 c d)))))
(/.f64 (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) -1) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) -1) (*.f64 (hypot.f64 c d) (neg.f64 (hypot.f64 c d))))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (hypot.f64 c d) (fma.f64 b c (*.f64 a d))))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (*.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (hypot.f64 c d))) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (/.f64 1 (hypot.f64 c d))) (*.f64 (hypot.f64 c d) (fma.f64 b c (*.f64 a d))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (hypot.f64 c d))) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (hypot.f64 c d))) (cbrt.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (sqrt.f64 (hypot.f64 c d))) (*.f64 (hypot.f64 c d) (sqrt.f64 (hypot.f64 c d))))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (*.f64 (hypot.f64 c d) (cbrt.f64 (hypot.f64 c d))))
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (*.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))) (cbrt.f64 (hypot.f64 c d))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (neg.f64 (fma.f64 b c (*.f64 a d)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (*.f64 (hypot.f64 c d) (neg.f64 (hypot.f64 c d))) (fma.f64 b c (*.f64 a d))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (*.f64 (neg.f64 (hypot.f64 c d)) (hypot.f64 c d)) (fma.f64 b c (*.f64 a d))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (neg.f64 (pow.f64 (hypot.f64 c d) 2)) (fma.f64 b c (*.f64 a d))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (neg.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (*.f64 (hypot.f64 c d) (neg.f64 (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (*.f64 (neg.f64 (hypot.f64 c d)) (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (neg.f64 (pow.f64 (hypot.f64 c d) 2)) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d)))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (-.f64 (*.f64 b c) (*.f64 a (neg.f64 d)))))
(/.f64 (-.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (-.f64 (*.f64 b c) (+.f64 (*.f64 a d) (fma.f64 (neg.f64 d) a (*.f64 a d))))))
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (*.f64 (hypot.f64 c d) (+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (fma.f64 b c (*.f64 a d))) (+.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 b c) 2))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))))
(/.f64 (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a (neg.f64 d)) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d))) (*.f64 (*.f64 b c) (*.f64 a (neg.f64 d)))))))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3) (pow.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) 3) (pow.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) 3)) (*.f64 (hypot.f64 c d) (+.f64 (+.f64 (*.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (*.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 a d) 2) 3)) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (fma.f64 b c (*.f64 a d))) (+.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 a d) 3) 3)) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (+.f64 (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 b c) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))))))
(/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 3))
(/.f64 (*.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 1) (*.f64 (neg.f64 (hypot.f64 c d)) (hypot.f64 c d)))
(/.f64 (*.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) -1) (*.f64 (neg.f64 (hypot.f64 c d)) (neg.f64 (hypot.f64 c d))))
(/.f64 (*.f64 -1 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (*.f64 (neg.f64 (hypot.f64 c d)) (neg.f64 (hypot.f64 c d))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) 1) (*.f64 (hypot.f64 c d) (*.f64 (fma.f64 b c (*.f64 a d)) (hypot.f64 c d))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) -1) (*.f64 (hypot.f64 c d) (*.f64 (fma.f64 b c (*.f64 a d)) (neg.f64 (hypot.f64 c d)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) 1) (*.f64 (hypot.f64 c d) (*.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (hypot.f64 c d))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) -1) (*.f64 (hypot.f64 c d) (*.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (neg.f64 (hypot.f64 c d)))))
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (hypot.f64 c d) (*.f64 (neg.f64 (hypot.f64 c d)) (fma.f64 b c (*.f64 a d)))))
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (hypot.f64 c d) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))))
(/.f64 (neg.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (neg.f64 (hypot.f64 c d)))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (pow.f64 (hypot.f64 c d) 2))
(pow.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 1)
(pow.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)) 2)
(pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))) 3)
(pow.f64 (pow.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 2))
(log.f64 (exp.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)))))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3)))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3) (pow.f64 (hypot.f64 c d) 3)))
(expm1.f64 (log1p.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))))
(exp.f64 (log.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (hypot.f64 c d)))) 1)
(*.f64 1 (/.f64 1 (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) 1)
(*.f64 (pow.f64 (hypot.f64 c d) -1/2) (pow.f64 (hypot.f64 c d) -1/2))
(*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 c d))) (cbrt.f64 (pow.f64 (hypot.f64 c d) -2)))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) -2)) (/.f64 1 (cbrt.f64 (hypot.f64 c d))))
(*.f64 -1 (/.f64 1 (neg.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 c d))) -1)
(*.f64 (pow.f64 (sqrt.f64 (hypot.f64 c d)) -1) (pow.f64 (sqrt.f64 (hypot.f64 c d)) -1))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) -1) (pow.f64 (cbrt.f64 (hypot.f64 c d)) -1))
(pow.f64 (hypot.f64 c d) -1)
(pow.f64 (/.f64 1 (hypot.f64 c d)) 1)
(pow.f64 (pow.f64 (hypot.f64 c d) -1/2) 2)
(pow.f64 (/.f64 1 (cbrt.f64 (hypot.f64 c d))) 3)
(pow.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) 1/3)
(pow.f64 (pow.f64 (hypot.f64 c d) 2) -1/2)
(sqrt.f64 (pow.f64 (hypot.f64 c d) -2))
(log.f64 (exp.f64 (/.f64 1 (hypot.f64 c d))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (hypot.f64 c d)))))
(cbrt.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)))
(expm1.f64 (log1p.f64 (/.f64 1 (hypot.f64 c d))))
(exp.f64 (neg.f64 (log.f64 (hypot.f64 c d))))
(exp.f64 (*.f64 (log.f64 (hypot.f64 c d)) -1))
(exp.f64 (*.f64 (neg.f64 (log.f64 (hypot.f64 c d))) 1))
(log1p.f64 (expm1.f64 (/.f64 1 (hypot.f64 c d))))
Outputs
(*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 a (neg.f64 d)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 c b))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 c b))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(*.f64 -1 a)
(neg.f64 a)
(+.f64 (/.f64 (*.f64 c b) d) (*.f64 -1 a))
(+.f64 (neg.f64 a) (/.f64 c (/.f64 d b)))
(+.f64 (neg.f64 a) (*.f64 (/.f64 c d) b))
(+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a)))
(+.f64 (/.f64 c (/.f64 d b)) (fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 a)))
(+.f64 (*.f64 (/.f64 c d) b) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 c c) (*.f64 d d)) a) (neg.f64 a)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a))))
(fma.f64 -1/2 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 3)) (+.f64 (/.f64 c (/.f64 d b)) (fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 a))))
(fma.f64 -1/2 (/.f64 b (/.f64 (pow.f64 d 3) (pow.f64 c 3))) (+.f64 (*.f64 (/.f64 c d) b) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 c c) (*.f64 d d)) a) (neg.f64 a))))
b
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b)
(fma.f64 -1 (/.f64 a (/.f64 c d)) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (fma.f64 -1 (/.f64 a (/.f64 c d)) b))
(fma.f64 -1/2 (/.f64 d (/.f64 (/.f64 (*.f64 c c) b) d)) (fma.f64 -1 (/.f64 a (/.f64 c d)) b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 b (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (+.f64 (fma.f64 -1 (/.f64 a (/.f64 c d)) b) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3)))))
(+.f64 (fma.f64 -1/2 (/.f64 d (/.f64 (/.f64 (*.f64 c c) b) d)) (fma.f64 -1 (/.f64 a (/.f64 c d)) b)) (/.f64 1/2 (/.f64 (pow.f64 c 3) (*.f64 a (pow.f64 d 3)))))
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1 b))
(+.f64 (/.f64 a (/.f64 c d)) (neg.f64 b))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b)))
(+.f64 (/.f64 a (/.f64 c d)) (fma.f64 1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (neg.f64 b)))
(+.f64 (/.f64 a (/.f64 c d)) (fma.f64 1/2 (/.f64 d (/.f64 (/.f64 (*.f64 c c) b) d)) (neg.f64 b)))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b))))
(+.f64 (/.f64 a (/.f64 c d)) (fma.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3)) (fma.f64 1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (neg.f64 b))))
(+.f64 (/.f64 a (/.f64 c d)) (fma.f64 -1/2 (*.f64 (/.f64 a (pow.f64 c 3)) (pow.f64 d 3)) (fma.f64 1/2 (/.f64 d (/.f64 (/.f64 (*.f64 c c) b) d)) (neg.f64 b))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 c b))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 a (neg.f64 d)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 a (neg.f64 d)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (neg.f64 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (+.f64 (*.f64 -1 (*.f64 a d)) (*.f64 c b)))
b
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b)
(fma.f64 -1 (/.f64 a (/.f64 c d)) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (fma.f64 -1 (/.f64 a (/.f64 c d)) b))
(fma.f64 -1/2 (/.f64 d (/.f64 (/.f64 (*.f64 c c) b) d)) (fma.f64 -1 (/.f64 a (/.f64 c d)) b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 b (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (+.f64 (fma.f64 -1 (/.f64 a (/.f64 c d)) b) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3)))))
(+.f64 (fma.f64 -1/2 (/.f64 d (/.f64 (/.f64 (*.f64 c c) b) d)) (fma.f64 -1 (/.f64 a (/.f64 c d)) b)) (/.f64 1/2 (/.f64 (pow.f64 c 3) (*.f64 a (pow.f64 d 3)))))
(*.f64 -1 a)
(neg.f64 a)
(+.f64 (/.f64 (*.f64 c b) d) (*.f64 -1 a))
(+.f64 (neg.f64 a) (/.f64 c (/.f64 d b)))
(+.f64 (neg.f64 a) (*.f64 (/.f64 c d) b))
(+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a)))
(+.f64 (/.f64 c (/.f64 d b)) (fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 a)))
(+.f64 (*.f64 (/.f64 c d) b) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 c c) (*.f64 d d)) a) (neg.f64 a)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a))))
(fma.f64 -1/2 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 3)) (+.f64 (/.f64 c (/.f64 d b)) (fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 a))))
(fma.f64 -1/2 (/.f64 b (/.f64 (pow.f64 d 3) (pow.f64 c 3))) (+.f64 (*.f64 (/.f64 c d) b) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 c c) (*.f64 d d)) a) (neg.f64 a))))
a
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) a)
(fma.f64 -1 (/.f64 c (/.f64 d b)) a)
(fma.f64 -1 (*.f64 (/.f64 c d) b) a)
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2)))))
(+.f64 (fma.f64 -1 (/.f64 c (/.f64 d b)) a) (*.f64 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) -1/2))
(+.f64 (fma.f64 -1 (*.f64 (/.f64 c d) b) a) (*.f64 (*.f64 (/.f64 (*.f64 c c) (*.f64 d d)) a) -1/2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (+.f64 a (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))))))
(+.f64 (fma.f64 -1 (/.f64 c (/.f64 d b)) a) (fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (*.f64 1/2 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 3)))))
(+.f64 (fma.f64 -1 (*.f64 (/.f64 c d) b) a) (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 c c) (*.f64 d d)) a) (*.f64 1/2 (/.f64 b (/.f64 (pow.f64 d 3) (pow.f64 c 3))))))
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b)))
(fma.f64 -1 (/.f64 a d) (/.f64 b (/.f64 (*.f64 d d) c)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3)))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 b (/.f64 (*.f64 d d) c))) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))))
(+.f64 (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (+.f64 (/.f64 c (/.f64 (*.f64 d d) b)) (neg.f64 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 4))))))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 b (/.f64 (*.f64 d d) c))) (+.f64 (/.f64 (neg.f64 (pow.f64 c 3)) (/.f64 (pow.f64 d 4) b)) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c))
(fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c)))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (fma.f64 -1 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 b c)))
(+.f64 (/.f64 b c) (neg.f64 (+.f64 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 (*.f64 (*.f64 d d) b) (pow.f64 c 3)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (+.f64 (fma.f64 -1 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 b c)) (/.f64 a (/.f64 (pow.f64 c 4) (pow.f64 d 3)))))
(+.f64 (+.f64 (/.f64 b c) (neg.f64 (+.f64 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 (*.f64 (*.f64 d d) b) (pow.f64 c 3))))) (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3)))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c))
(fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c)))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (fma.f64 -1 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 b c)))
(+.f64 (/.f64 b c) (neg.f64 (+.f64 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 (*.f64 (*.f64 d d) b) (pow.f64 c 3)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (+.f64 (fma.f64 -1 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 b c)) (/.f64 a (/.f64 (pow.f64 c 4) (pow.f64 d 3)))))
(+.f64 (+.f64 (/.f64 b c) (neg.f64 (+.f64 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 (*.f64 (*.f64 d d) b) (pow.f64 c 3))))) (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3)))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c))
(fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c)))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (fma.f64 -1 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 b c)))
(+.f64 (/.f64 b c) (neg.f64 (+.f64 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 (*.f64 (*.f64 d d) b) (pow.f64 c 3)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (+.f64 (fma.f64 -1 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 b c)) (/.f64 a (/.f64 (pow.f64 c 4) (pow.f64 d 3)))))
(+.f64 (+.f64 (/.f64 b c) (neg.f64 (+.f64 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 (*.f64 (*.f64 d d) b) (pow.f64 c 3))))) (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3)))
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b)))
(fma.f64 -1 (/.f64 a d) (/.f64 b (/.f64 (*.f64 d d) c)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3)))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 b (/.f64 (*.f64 d d) c))) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))))
(+.f64 (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (+.f64 (/.f64 c (/.f64 (*.f64 d d) b)) (neg.f64 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 4))))))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 b (/.f64 (*.f64 d d) c))) (+.f64 (/.f64 (neg.f64 (pow.f64 c 3)) (/.f64 (pow.f64 d 4) b)) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3))))
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b)))
(fma.f64 -1 (/.f64 a d) (/.f64 b (/.f64 (*.f64 d d) c)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3)))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 b (/.f64 (*.f64 d d) c))) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))))
(+.f64 (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (+.f64 (/.f64 c (/.f64 (*.f64 d d) b)) (neg.f64 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 4))))))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 b (/.f64 (*.f64 d d) c))) (+.f64 (/.f64 (neg.f64 (pow.f64 c 3)) (/.f64 (pow.f64 d 4) b)) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 d 3))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b)
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b)
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b)
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c))) (*.f64 (/.f64 c (+.f64 (*.f64 d d) (*.f64 c c))) b))
(/.f64 1 d)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (/.f64 1 d))
(fma.f64 -1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 1 d))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (+.f64 (/.f64 1 d) (*.f64 3/8 (/.f64 (pow.f64 c 4) (pow.f64 d 5)))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 1 d)) (/.f64 (*.f64 3/8 (pow.f64 c 4)) (pow.f64 d 5)))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 1 d)) (/.f64 3/8 (/.f64 (pow.f64 d 5) (pow.f64 c 4))))
(+.f64 (*.f64 -5/16 (/.f64 (pow.f64 c 6) (pow.f64 d 7))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (+.f64 (/.f64 1 d) (*.f64 3/8 (/.f64 (pow.f64 c 4) (pow.f64 d 5))))))
(fma.f64 -5/16 (/.f64 (pow.f64 c 6) (pow.f64 d 7)) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 1 d)) (/.f64 (*.f64 3/8 (pow.f64 c 4)) (pow.f64 d 5))))
(fma.f64 -5/16 (/.f64 (pow.f64 c 6) (pow.f64 d 7)) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 1 d)) (/.f64 3/8 (/.f64 (pow.f64 d 5) (pow.f64 c 4)))))
(/.f64 1 c)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (/.f64 1 c))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (/.f64 1 c))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (+.f64 (/.f64 1 c) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 d 4)) (*.f64 -1/4 (pow.f64 d 4))) (pow.f64 c 5)))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (/.f64 1 c)) (neg.f64 (/.f64 (*.f64 (pow.f64 d 4) -3/8) (pow.f64 c 5))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (/.f64 1 c)) (/.f64 (neg.f64 (*.f64 (pow.f64 d 4) -3/8)) (pow.f64 c 5)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (pow.f64 d 4)) (*.f64 -1/4 (pow.f64 d 4))))) (*.f64 1/8 (pow.f64 d 6))) (pow.f64 c 7))) (+.f64 (/.f64 1 c) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 d 4)) (*.f64 -1/4 (pow.f64 d 4))) (pow.f64 c 5))))))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 d d) (*.f64 (pow.f64 d 4) -3/8)) (*.f64 1/8 (pow.f64 d 6))) (pow.f64 c 7)) (+.f64 (/.f64 1 c) (neg.f64 (/.f64 (*.f64 (pow.f64 d 4) -3/8) (pow.f64 c 5))))))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 d d) (*.f64 (pow.f64 d 4) -3/8)) (*.f64 1/8 (pow.f64 d 6))) (pow.f64 c 7)) (+.f64 (/.f64 1 c) (/.f64 (neg.f64 (*.f64 (pow.f64 d 4) -3/8)) (pow.f64 c 5)))))
(/.f64 -1 c)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (/.f64 1 c))
(-.f64 (*.f64 1/2 (/.f64 (*.f64 d d) (pow.f64 c 3))) (/.f64 1 c))
(fma.f64 1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (/.f64 -1 c))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 d 4) (pow.f64 c 5))) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (pow.f64 c 5))))) (/.f64 1 c))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (*.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) -3/8)) (/.f64 1 c))
(+.f64 (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 5) -3/8)) (fma.f64 1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (/.f64 -1 c)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (pow.f64 d 4)) (*.f64 -1/4 (pow.f64 d 4)))) (pow.f64 c 7))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 d 4) (pow.f64 c 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 d 6) (pow.f64 c 7))) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (pow.f64 c 5))))))) (/.f64 1 c))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 7) (*.f64 (pow.f64 d 4) -3/8))) (fma.f64 -1/4 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) (fma.f64 1/8 (/.f64 (pow.f64 d 6) (pow.f64 c 7)) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (pow.f64 c 5))))))) (/.f64 1 c))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 7)) (*.f64 (pow.f64 d 4) -3/8)) (+.f64 (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 5) -3/8)) (*.f64 1/8 (/.f64 (pow.f64 d 6) (pow.f64 c 7))))) (fma.f64 1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (/.f64 -1 c)))
(/.f64 1 c)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (/.f64 1 c))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (/.f64 1 c))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 d 4) (pow.f64 c 5))) (/.f64 1 c)))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (fma.f64 3/8 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) (/.f64 1 c)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (pow.f64 c 3))) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 d 4) (pow.f64 c 5))) (+.f64 (/.f64 1 c) (*.f64 -5/16 (/.f64 (pow.f64 d 6) (pow.f64 c 7))))))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (+.f64 (fma.f64 3/8 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) (/.f64 1 c)) (*.f64 -5/16 (/.f64 (pow.f64 d 6) (pow.f64 c 7)))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (pow.f64 c 3)) (fma.f64 3/8 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) (/.f64 1 c))) (*.f64 -5/16 (/.f64 (pow.f64 d 6) (pow.f64 c 7))))
(/.f64 1 d)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (/.f64 1 d))
(fma.f64 -1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 1 d))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 c 4)) (*.f64 -1/8 (pow.f64 c 4))) (pow.f64 d 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (/.f64 1 d)))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) -3/8) (pow.f64 d 5)) (fma.f64 -1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 1 d)))
(fma.f64 -1 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 d 5) -3/8)) (fma.f64 -1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 1 d)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/4 (pow.f64 c 4)) (*.f64 -1/8 (pow.f64 c 4))))) (*.f64 1/8 (pow.f64 c 6))) (pow.f64 d 7))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 c 4)) (*.f64 -1/8 (pow.f64 c 4))) (pow.f64 d 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (/.f64 1 d))))
(fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 c c) (*.f64 (pow.f64 c 4) -3/8)) (*.f64 (pow.f64 c 6) 1/8)) (pow.f64 d 7)) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) -3/8) (pow.f64 d 5)) (fma.f64 -1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 1 d))))
(fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 c c) (*.f64 (pow.f64 c 4) -3/8)) (*.f64 (pow.f64 c 6) 1/8)) (pow.f64 d 7)) (fma.f64 -1 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 d 5) -3/8)) (fma.f64 -1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 1 d))))
(/.f64 -1 d)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (/.f64 1 d))
(-.f64 (/.f64 (*.f64 1/2 (*.f64 c c)) (pow.f64 d 3)) (/.f64 1 d))
(fma.f64 1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 -1 d))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 c 4) (pow.f64 d 5))) (*.f64 -1/4 (/.f64 (pow.f64 c 4) (pow.f64 d 5))))) (/.f64 1 d))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 d 5)) -3/8)) (/.f64 1 d))
(+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 d 5) -3/8)) (fma.f64 1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 -1 d)))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (pow.f64 c 6) (pow.f64 d 7))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/4 (pow.f64 c 4)) (*.f64 -1/8 (pow.f64 c 4)))) (pow.f64 d 7))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (pow.f64 d 3))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 c 4) (pow.f64 d 5))) (*.f64 -1/4 (/.f64 (pow.f64 c 4) (pow.f64 d 5))))))) (/.f64 1 d))
(-.f64 (fma.f64 1/8 (/.f64 (pow.f64 c 6) (pow.f64 d 7)) (fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 7) (*.f64 (pow.f64 c 4) -3/8))) (fma.f64 1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 d 5)) -3/8)))) (/.f64 1 d))
(+.f64 (fma.f64 1/8 (/.f64 (pow.f64 c 6) (pow.f64 d 7)) (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 7)) (*.f64 (pow.f64 c 4) -3/8)) (fma.f64 1/2 (/.f64 (*.f64 c c) (pow.f64 d 3)) (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 d 5) -3/8))))) (/.f64 -1 d))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (*.f64 2 (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (*.f64 a (+.f64 (neg.f64 d) d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (*.f64 2 (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (*.f64 a (+.f64 (neg.f64 d) d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (*.f64 2 (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (*.f64 a (+.f64 (neg.f64 d) d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (*.f64 2 (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (*.f64 a (+.f64 (neg.f64 d) d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 1 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (*.f64 2 (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (*.f64 a (+.f64 (neg.f64 d) d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 1)))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) d (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (*.f64 a (neg.f64 d)) 1 (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) (sqrt.f64 (*.f64 a d)) (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a d))) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a d))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a)))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d))) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 1 (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d)))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 1 (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d)))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (neg.f64 d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (*.f64 a (neg.f64 d)) 1)))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d))) (*.f64 (/.f64 b (hypot.f64 c d)) c))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 b (hypot.f64 c d)) c))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(+.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d))) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a)) (*.f64 (/.f64 b (hypot.f64 c d)) c))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (-.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (-.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) 1)
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (-.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (-.f64 1 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 1)
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(*.f64 1 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 b c) (*.f64 a d)))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (hypot.f64 c d)))
(/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 (hypot.f64 c d) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(*.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (*.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))))
(*.f64 (pow.f64 (hypot.f64 c d) -1/2) (*.f64 (pow.f64 (hypot.f64 c d) -1/2) (-.f64 (*.f64 b c) (*.f64 a d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(*.f64 (pow.f64 (hypot.f64 c d) -1/2) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (sqrt.f64 (hypot.f64 c d))))
(*.f64 (pow.f64 (hypot.f64 c d) -1/2) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (sqrt.f64 (hypot.f64 c d))))
(*.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 2))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 2) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (*.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (hypot.f64 c d))))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (*.f64 (/.f64 1 (hypot.f64 c d)) (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2)))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) -2)) (*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 c d))) (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) -2)) (*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (/.f64 1 (cbrt.f64 (hypot.f64 c d)))))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) -2)) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (neg.f64 (hypot.f64 c d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(*.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -1/2)) (pow.f64 (hypot.f64 c d) -1/2))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(*.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (cbrt.f64 (pow.f64 (hypot.f64 c d) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 c d))))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) -2)) (*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (/.f64 1 (cbrt.f64 (hypot.f64 c d)))))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) -2)) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))))
(*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2)) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (*.f64 (/.f64 1 (hypot.f64 c d)) (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2)))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (sqrt.f64 (hypot.f64 c d))) (pow.f64 (hypot.f64 c d) -1/2))
(*.f64 (pow.f64 (hypot.f64 c d) -1/2) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (sqrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 c d))) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 c d))) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (neg.f64 (hypot.f64 c d))) -1)
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(*.f64 (*.f64 (pow.f64 (hypot.f64 c d) -1/2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (*.f64 (pow.f64 (hypot.f64 c d) -1/2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))))
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 c d))) (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (hypot.f64 c d)) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (hypot.f64 c d)))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (/.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (hypot.f64 c d)))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 1) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)))
(*.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (hypot.f64 c d)))
(/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 (hypot.f64 c d) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (cbrt.f64 (hypot.f64 c d))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (cbrt.f64 (hypot.f64 c d)))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) 1) (/.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)))
(*.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (hypot.f64 c d)))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (/.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (hypot.f64 c d)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (sqrt.f64 (hypot.f64 c d))) (/.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (sqrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (sqrt.f64 (hypot.f64 c d))) (/.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (sqrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(*.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))) (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)))
(*.f64 (/.f64 1 (/.f64 (hypot.f64 c d) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))))
(*.f64 (/.f64 1 (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2))) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (*.f64 (/.f64 1 (hypot.f64 c d)) (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2)))
(*.f64 (/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (-.f64 (*.f64 b c) (*.f64 a d)))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2))))
(/.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2))))
(*.f64 (/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (*.f64 b c) (*.f64 a d)))))
(*.f64 (/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3))) (+.f64 (pow.f64 (*.f64 c b) 2) (-.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (*.f64 a d) (*.f64 c b)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (+.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (-.f64 (*.f64 a d) (*.f64 c b)))))
(*.f64 (/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (-.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (-.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))
(*.f64 (/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 c b) 4) (*.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (fma.f64 b c (*.f64 a d)) (fma.f64 b c (*.f64 a d)))))) (-.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (-.f64 (pow.f64 (*.f64 c b) 4) (*.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (fma.f64 b c (*.f64 a d)) (fma.f64 b c (*.f64 a d))))) (hypot.f64 c d))) (-.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(*.f64 (/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (+.f64 (pow.f64 (pow.f64 (*.f64 b c) 2) 3) (pow.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) 3))) (-.f64 (+.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (*.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(*.f64 (/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (pow.f64 (*.f64 c b) 2) 3) (pow.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) 3))) (+.f64 (pow.f64 (*.f64 c b) 4) (-.f64 (*.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (fma.f64 b c (*.f64 a d)) (fma.f64 b c (*.f64 a d)))) (*.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d)))) 3) (pow.f64 (*.f64 c b) 6)) (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 c b) 4) (*.f64 (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d)))) (-.f64 (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d)))) (pow.f64 (*.f64 c b) 2)))))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (/.f64 1 (hypot.f64 c d))) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (-.f64 (*.f64 b c) (*.f64 a d)))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2))))
(/.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) (/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2))))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (/.f64 1 (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (*.f64 b c) (*.f64 a d)))))
(*.f64 (/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3))) (+.f64 (pow.f64 (*.f64 c b) 2) (-.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (*.f64 a d) (*.f64 c b)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (+.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (-.f64 (*.f64 a d) (*.f64 c b)))))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (hypot.f64 c d))) (-.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))) (-.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))
(*.f64 (/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 c b) 4) (*.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (fma.f64 b c (*.f64 a d)) (fma.f64 b c (*.f64 a d)))))) (-.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (-.f64 (pow.f64 (*.f64 c b) 4) (*.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (fma.f64 b c (*.f64 a d)) (fma.f64 b c (*.f64 a d))))) (hypot.f64 c d))) (-.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (hypot.f64 c d))) (+.f64 (pow.f64 (pow.f64 (*.f64 b c) 2) 3) (pow.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) 3))) (-.f64 (+.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (*.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(*.f64 (/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (pow.f64 (*.f64 c b) 2) 3) (pow.f64 (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))) 3))) (+.f64 (pow.f64 (*.f64 c b) 4) (-.f64 (*.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (fma.f64 b c (*.f64 a d)) (fma.f64 b c (*.f64 a d)))) (*.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d)))) 3) (pow.f64 (*.f64 c b) 6)) (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 c b) 4) (*.f64 (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d)))) (-.f64 (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d)))) (pow.f64 (*.f64 c b) 2)))))
(*.f64 (/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 a d))) (-.f64 (*.f64 (*.f64 c c) (*.f64 c c)) (*.f64 (*.f64 d d) (*.f64 d d)))) (-.f64 (*.f64 c c) (*.f64 d d)))
(*.f64 (/.f64 (-.f64 (*.f64 b (*.f64 c (hypot.f64 c d))) (*.f64 (*.f64 (hypot.f64 c d) a) d)) (-.f64 (pow.f64 c 4) (pow.f64 d 4))) (-.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 (hypot.f64 c d) (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 (-.f64 (pow.f64 c 4) (pow.f64 d 4)) (-.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 a d))) (+.f64 (pow.f64 (*.f64 c c) 3) (pow.f64 (*.f64 d d) 3))) (+.f64 (*.f64 (*.f64 c c) (*.f64 c c)) (-.f64 (*.f64 (*.f64 d d) (*.f64 d d)) (*.f64 (*.f64 c c) (*.f64 d d)))))
(*.f64 (/.f64 (-.f64 (*.f64 b (*.f64 c (hypot.f64 c d))) (*.f64 (*.f64 (hypot.f64 c d) a) d)) (+.f64 (pow.f64 c 6) (pow.f64 d 6))) (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (*.f64 (*.f64 c d) (*.f64 c d)))))
(/.f64 (*.f64 (hypot.f64 c d) (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 (+.f64 (pow.f64 c 6) (pow.f64 d 6)) (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (*.f64 (*.f64 d d) (*.f64 c c))))))
(pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 1)
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(pow.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 2)
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 3)
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(pow.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3) 1/3)
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(pow.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))) -1)
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(neg.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (neg.f64 (hypot.f64 c d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 2))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) 2))
(log.f64 (exp.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (*.f64 1 (pow.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) 3)))
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (*.f64 1 (pow.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) 3)))
(cbrt.f64 (/.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3) (pow.f64 (hypot.f64 c d) 3)))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(exp.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 1))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))
(+.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))
(fma.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2) (*.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(*.f64 (pow.f64 (hypot.f64 c d) -2) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (/.f64 1 (hypot.f64 c d)))))
(fma.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2) (*.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 (neg.f64 d) a (*.f64 a d))))
(*.f64 (pow.f64 (hypot.f64 c d) -2) (+.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (*.f64 a (neg.f64 d)) (/.f64 1 (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (neg.f64 d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)))) 1)
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(-.f64 (/.f64 (*.f64 b c) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (hypot.f64 c d))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 1 (/.f64 (pow.f64 (hypot.f64 c d) 2) (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 1 (/.f64 (hypot.f64 c d) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 1 (*.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))) (neg.f64 (neg.f64 (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))) (pow.f64 (hypot.f64 c d) -2)))
(/.f64 1 (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (sqrt.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))))))
(/.f64 1 (/.f64 (*.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 c b) (*.f64 a d))))) (sqrt.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)))))
(*.f64 (/.f64 1 (*.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 c b) (*.f64 a d)))))) (sqrt.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))))
(/.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 (pow.f64 (hypot.f64 c d) 2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 2)) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))))
(pow.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (hypot.f64 c d)) 2)
(/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (*.f64 (hypot.f64 c d) (/.f64 (hypot.f64 c d) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 2)) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))))
(pow.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (hypot.f64 c d)) 2)
(/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (sqrt.f64 (hypot.f64 c d))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 (*.f64 (hypot.f64 c d) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (*.f64 (hypot.f64 c d) (sqrt.f64 (hypot.f64 c d)))) (sqrt.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))))
(/.f64 (pow.f64 (hypot.f64 c d) -1/2) (*.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))) (sqrt.f64 (hypot.f64 c d))))
(/.f64 (pow.f64 (hypot.f64 c d) -1/2) (*.f64 (sqrt.f64 (hypot.f64 c d)) (/.f64 (hypot.f64 c d) (-.f64 (*.f64 c b) (*.f64 a d)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -1/2) (*.f64 (hypot.f64 c d) (sqrt.f64 (hypot.f64 c d)))) (-.f64 (*.f64 c b) (*.f64 a d)))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) 2) (*.f64 (hypot.f64 c d) (cbrt.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))))))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))) 2) (*.f64 (hypot.f64 c d) (cbrt.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 c b) (*.f64 a d))))))
(/.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))) 2) (hypot.f64 c d)) (cbrt.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 c b) (*.f64 a d)))))
(/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (/.f64 (pow.f64 (hypot.f64 c d) 2) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (pow.f64 (hypot.f64 c d) 2)) (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))))
(*.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (pow.f64 (hypot.f64 c d) 2)))
(/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 2) (*.f64 (hypot.f64 c d) (/.f64 (hypot.f64 c d) (cbrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (pow.f64 (hypot.f64 c d) 2)) (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))))
(*.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) 2) (pow.f64 (hypot.f64 c d) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (fma.f64 b c (*.f64 a d))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (fma.f64 b c (*.f64 a d)))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))) (pow.f64 (hypot.f64 c d) -2)))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))) (pow.f64 (hypot.f64 c d) -2)))
(/.f64 -1 (*.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))) (neg.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 -1 (*.f64 (neg.f64 (hypot.f64 c d)) (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 -1 (*.f64 (hypot.f64 c d) (neg.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (*.f64 (hypot.f64 c d) (neg.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (*.f64 (neg.f64 (hypot.f64 c d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (neg.f64 (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (/.f64 (pow.f64 (hypot.f64 c d) 2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (/.f64 (pow.f64 (hypot.f64 c d) 2) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))))
(/.f64 (*.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3))) (pow.f64 (hypot.f64 c d) 2)) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d)))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (/.f64 (pow.f64 (hypot.f64 c d) 2) (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (sqrt.f64 (fma.f64 b c (*.f64 a d)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (/.f64 (pow.f64 (hypot.f64 c d) 2) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d)))) (sqrt.f64 (fma.f64 b c (*.f64 a d)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (sqrt.f64 (fma.f64 b c (*.f64 a d))))) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))) (sqrt.f64 (neg.f64 (hypot.f64 c d)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (*.f64 c b) (*.f64 a d)))) (/.f64 (*.f64 (hypot.f64 c d) (sqrt.f64 (neg.f64 (hypot.f64 c d)))) (sqrt.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)))))
(*.f64 (/.f64 (sqrt.f64 (neg.f64 (-.f64 (*.f64 c b) (*.f64 a d)))) (*.f64 (hypot.f64 c d) (sqrt.f64 (neg.f64 (hypot.f64 c d))))) (sqrt.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))))
(/.f64 (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) -1) (neg.f64 (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (neg.f64 (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) -1) (*.f64 (hypot.f64 c d) (neg.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (hypot.f64 c d) (fma.f64 b c (*.f64 a d))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))) (pow.f64 (hypot.f64 c d) -2)))
(/.f64 (*.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (/.f64 1 (hypot.f64 c d))) (neg.f64 (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (neg.f64 (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) (/.f64 1 (hypot.f64 c d))) (*.f64 (hypot.f64 c d) (fma.f64 b c (*.f64 a d))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (hypot.f64 c d))) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))) (pow.f64 (hypot.f64 c d) -2)))
(/.f64 (/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 (hypot.f64 c d) (sqrt.f64 (hypot.f64 c d)))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 (sqrt.f64 (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (sqrt.f64 (hypot.f64 c d)))))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (hypot.f64 c d))) (cbrt.f64 (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 (cbrt.f64 (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2))))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (sqrt.f64 (hypot.f64 c d))) (*.f64 (hypot.f64 c d) (sqrt.f64 (hypot.f64 c d))))
(/.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 (hypot.f64 c d) (sqrt.f64 (hypot.f64 c d)))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 (sqrt.f64 (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (sqrt.f64 (hypot.f64 c d)))))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (*.f64 (hypot.f64 c d) (cbrt.f64 (hypot.f64 c d))))
(/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 (cbrt.f64 (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2))))
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (*.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 a d))) (cbrt.f64 (hypot.f64 c d))))
(/.f64 1 (*.f64 (*.f64 (cbrt.f64 (hypot.f64 c d)) (/.f64 (hypot.f64 c d) (-.f64 (*.f64 c b) (*.f64 a d)))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)))
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 3)) (/.f64 (hypot.f64 c d) (-.f64 (*.f64 c b) (*.f64 a d))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (neg.f64 (fma.f64 b c (*.f64 a d)))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (*.f64 (hypot.f64 c d) (neg.f64 (hypot.f64 c d))) (fma.f64 b c (*.f64 a d))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (*.f64 (neg.f64 (hypot.f64 c d)) (hypot.f64 c d)) (fma.f64 b c (*.f64 a d))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (neg.f64 (pow.f64 (hypot.f64 c d) 2)) (fma.f64 b c (*.f64 a d))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (neg.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))) (pow.f64 (hypot.f64 c d) -2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (*.f64 (hypot.f64 c d) (neg.f64 (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))) (pow.f64 (hypot.f64 c d) -2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (*.f64 (neg.f64 (hypot.f64 c d)) (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))) (pow.f64 (hypot.f64 c d) -2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (neg.f64 (pow.f64 (hypot.f64 c d) 2)) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))) (pow.f64 (hypot.f64 c d) -2)))
(/.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d)))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (-.f64 (*.f64 b c) (*.f64 a (neg.f64 d)))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (-.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (-.f64 (*.f64 b c) (+.f64 (*.f64 a d) (fma.f64 (neg.f64 d) a (*.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (-.f64 (*.f64 c b) (fma.f64 a d (fma.f64 (neg.f64 d) a (*.f64 a d))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2) (*.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (*.f64 a (+.f64 (neg.f64 d) d)))) (pow.f64 (hypot.f64 c d) 2)) (-.f64 (*.f64 c b) (fma.f64 a d (*.f64 a (+.f64 (neg.f64 d) d)))))
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (*.f64 (hypot.f64 c d) (+.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))))
(/.f64 (*.f64 (fma.f64 (/.f64 b (hypot.f64 c d)) c (*.f64 a (/.f64 d (hypot.f64 c d)))) (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d))) (*.f64 (hypot.f64 c d) (fma.f64 (/.f64 b (hypot.f64 c d)) c (*.f64 a (/.f64 d (hypot.f64 c d))))))
(/.f64 (/.f64 (fma.f64 (/.f64 b (hypot.f64 c d)) c (*.f64 a (/.f64 d (hypot.f64 c d)))) (/.f64 (pow.f64 (hypot.f64 c d) 2) (-.f64 (*.f64 c b) (*.f64 a d)))) (fma.f64 (/.f64 b (hypot.f64 c d)) c (*.f64 a (/.f64 d (hypot.f64 c d)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (fma.f64 b c (*.f64 a d))) (+.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 b c) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 4) (pow.f64 (*.f64 a d) 4)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (*.f64 (fma.f64 b c (*.f64 a d)) (+.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 6) (pow.f64 (*.f64 a d) 6)) (*.f64 (+.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 6) (pow.f64 (*.f64 a d) 6)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))))) (+.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))
(/.f64 (+.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a (neg.f64 d)) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 b c) 2) (-.f64 (*.f64 (*.f64 a (neg.f64 d)) (*.f64 a (neg.f64 d))) (*.f64 (*.f64 b c) (*.f64 a (neg.f64 d)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a (neg.f64 d)) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a (neg.f64 d)) (-.f64 (*.f64 a (neg.f64 d)) (*.f64 c b))))))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 3) (pow.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (-.f64 (*.f64 b c) (*.f64 a d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d))) (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (fma.f64 (neg.f64 d) a (*.f64 a d)))))))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 3) (pow.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2) (*.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (-.f64 (fma.f64 (neg.f64 d) a (*.f64 a d)) (-.f64 (*.f64 c b) (*.f64 a d)))))))
(/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 3) (pow.f64 (*.f64 a (+.f64 (neg.f64 d) d)) 3)) (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (-.f64 (*.f64 c b) (*.f64 a d)) 2) (*.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 a (+.f64 (neg.f64 d) d)) (-.f64 (*.f64 c b) (*.f64 a d)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) 3) (pow.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) 3)) (*.f64 (hypot.f64 c d) (+.f64 (+.f64 (*.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 b (hypot.f64 c d)) c)) (*.f64 (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (*.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 a (/.f64 d (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (fma.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (*.f64 a (/.f64 d (hypot.f64 c d))) (*.f64 a (/.f64 d (hypot.f64 c d))))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 a (/.f64 d (hypot.f64 c d)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 a (/.f64 d (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (*.f64 a (/.f64 d (hypot.f64 c d))) (fma.f64 (/.f64 b (hypot.f64 c d)) c (*.f64 a (/.f64 d (hypot.f64 c d))))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 a d) 2) 3)) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (fma.f64 b c (*.f64 a d))) (+.f64 (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 b c) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a d) 2)) (*.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c b) 2) 3) (pow.f64 (pow.f64 (*.f64 a d) 2) 3)) (*.f64 (*.f64 (fma.f64 b c (*.f64 a d)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (pow.f64 (*.f64 c b) 4) (+.f64 (pow.f64 (*.f64 a d) 4) (*.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c b) 6) (pow.f64 (*.f64 a d) 6)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 b c (*.f64 a d)) (+.f64 (*.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)) (+.f64 (pow.f64 (*.f64 c b) 4) (pow.f64 (*.f64 a d) 4)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 a d) 3) 3)) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (+.f64 (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 b c) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 a d) 3) (pow.f64 (*.f64 a d) 3)) (*.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c b) 3) 3) (pow.f64 (pow.f64 (*.f64 a d) 3) 3)) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d))))) (+.f64 (pow.f64 (*.f64 c b) 6) (*.f64 (pow.f64 (*.f64 a d) 3) (+.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c b) 3) 3) (pow.f64 (pow.f64 (*.f64 a d) 3) 3)) (*.f64 (*.f64 (pow.f64 (hypot.f64 c d) 2) (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d)))))) (+.f64 (pow.f64 (*.f64 c b) 6) (*.f64 (pow.f64 (*.f64 a d) 3) (+.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3))))))
(/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 3))
(/.f64 (-.f64 (*.f64 b (*.f64 c (hypot.f64 c d))) (*.f64 (*.f64 (hypot.f64 c d) a) d)) (pow.f64 (hypot.f64 c d) 3))
(/.f64 (*.f64 (hypot.f64 c d) (-.f64 (*.f64 c b) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 3))
(/.f64 (*.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) 1) (*.f64 (neg.f64 (hypot.f64 c d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (*.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d))) -1) (*.f64 (neg.f64 (hypot.f64 c d)) (neg.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (*.f64 -1 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (*.f64 (neg.f64 (hypot.f64 c d)) (neg.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) 1) (*.f64 (hypot.f64 c d) (*.f64 (fma.f64 b c (*.f64 a d)) (hypot.f64 c d))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2)) -1) (*.f64 (hypot.f64 c d) (*.f64 (fma.f64 b c (*.f64 a d)) (neg.f64 (hypot.f64 c d)))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) 1) (*.f64 (hypot.f64 c d) (*.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (hypot.f64 c d))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))) (pow.f64 (hypot.f64 c d) -2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3)) -1) (*.f64 (hypot.f64 c d) (*.f64 (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (neg.f64 (hypot.f64 c d)))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))) (pow.f64 (hypot.f64 c d) -2)))
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 b c) 2) (pow.f64 (*.f64 a d) 2))) (*.f64 (hypot.f64 c d) (*.f64 (neg.f64 (hypot.f64 c d)) (fma.f64 b c (*.f64 a d)))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (fma.f64 b c (*.f64 a d)) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 c d) -2) (fma.f64 b c (*.f64 a d))) (-.f64 (pow.f64 (*.f64 c b) 2) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 b c) 3) (pow.f64 (*.f64 a d) 3))) (*.f64 (hypot.f64 c d) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b c) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))))))
(/.f64 1 (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 (*.f64 a d) (fma.f64 b c (*.f64 a d)))) (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c b) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 c b) 2) (*.f64 a (*.f64 d (fma.f64 b c (*.f64 a d))))) (pow.f64 (hypot.f64 c d) -2)))
(/.f64 (neg.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (neg.f64 (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 b c) (*.f64 a d)))) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(pow.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 1)
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(pow.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b c) (*.f64 a d))) (hypot.f64 c d)) 2)
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (pow.f64 (hypot.f64 c d) 2)) (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))))
(pow.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 c b) (*.f64 a d))) (hypot.f64 c d)) 2)
(pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))) 3)
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(pow.f64 (pow.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 3) 1/3)
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(sqrt.f64 (pow.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 2))
(sqrt.f64 (pow.f64 (*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 2))
(log.f64 (exp.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2)) 3))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)) 3) (pow.f64 (hypot.f64 c d) 3)))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (hypot.f64 c d)) 3) (pow.f64 (hypot.f64 c d) 3)))
(expm1.f64 (log1p.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(exp.f64 (log.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))) 1))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(log1p.f64 (expm1.f64 (*.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (*.f64 a (neg.f64 d)) (hypot.f64 c d))))
(*.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (pow.f64 (hypot.f64 c d) -2))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (hypot.f64 c d)))) 1)
(/.f64 1 (hypot.f64 c d))
(*.f64 1 (/.f64 1 (hypot.f64 c d)))
(/.f64 1 (hypot.f64 c d))
(*.f64 (/.f64 1 (hypot.f64 c d)) 1)
(/.f64 1 (hypot.f64 c d))
(*.f64 (pow.f64 (hypot.f64 c d) -1/2) (pow.f64 (hypot.f64 c d) -1/2))
(/.f64 1 (hypot.f64 c d))
(*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 c d))) (cbrt.f64 (pow.f64 (hypot.f64 c d) -2)))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) -2)) (/.f64 1 (cbrt.f64 (hypot.f64 c d))))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) -2)) (/.f64 1 (cbrt.f64 (hypot.f64 c d))))
(*.f64 -1 (/.f64 1 (neg.f64 (hypot.f64 c d))))
(/.f64 1 (hypot.f64 c d))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 c d))))
(/.f64 (*.f64 1 (/.f64 1 (cbrt.f64 (hypot.f64 c d)))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2))
(/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 3))
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 c d))) -1)
(/.f64 1 (hypot.f64 c d))
(*.f64 (pow.f64 (sqrt.f64 (hypot.f64 c d)) -1) (pow.f64 (sqrt.f64 (hypot.f64 c d)) -1))
(pow.f64 (sqrt.f64 (hypot.f64 c d)) -2)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) -1) (pow.f64 (cbrt.f64 (hypot.f64 c d)) -1))
(/.f64 (*.f64 1 (/.f64 1 (cbrt.f64 (hypot.f64 c d)))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2))
(/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 3))
(pow.f64 (hypot.f64 c d) -1)
(/.f64 1 (hypot.f64 c d))
(pow.f64 (/.f64 1 (hypot.f64 c d)) 1)
(/.f64 1 (hypot.f64 c d))
(pow.f64 (pow.f64 (hypot.f64 c d) -1/2) 2)
(/.f64 1 (hypot.f64 c d))
(pow.f64 (/.f64 1 (cbrt.f64 (hypot.f64 c d))) 3)
(/.f64 (*.f64 1 (/.f64 1 (cbrt.f64 (hypot.f64 c d)))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2))
(/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 3))
(pow.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) 1/3)
(cbrt.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)))
(pow.f64 (pow.f64 (hypot.f64 c d) 2) -1/2)
(sqrt.f64 (pow.f64 (hypot.f64 c d) -2))
(log.f64 (exp.f64 (/.f64 1 (hypot.f64 c d))))
(/.f64 1 (hypot.f64 c d))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (hypot.f64 c d)))))
(/.f64 1 (hypot.f64 c d))
(cbrt.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)))
(expm1.f64 (log1p.f64 (/.f64 1 (hypot.f64 c d))))
(/.f64 1 (hypot.f64 c d))
(exp.f64 (neg.f64 (log.f64 (hypot.f64 c d))))
(/.f64 1 (hypot.f64 c d))
(exp.f64 (*.f64 (log.f64 (hypot.f64 c d)) -1))
(/.f64 1 (hypot.f64 c d))
(exp.f64 (*.f64 (neg.f64 (log.f64 (hypot.f64 c d))) 1))
(/.f64 1 (hypot.f64 c d))
(log1p.f64 (expm1.f64 (/.f64 1 (hypot.f64 c d))))
(/.f64 1 (hypot.f64 c d))

localize5.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

localize16.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
97.3%
(*.f64 (/.f64 b d) (/.f64 c d))
95.6%
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
Compiler

Compiled 35 to 9 computations (74.3% saved)

series8.0ms (0.1%)

Counts
2 → 84
Calls

21 calls:

TimeVariablePointExpression
2.0ms
a
@0
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
0.0ms
b
@0
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
0.0ms
b
@0
(*.f64 (/.f64 b d) (/.f64 c d))
0.0ms
d
@0
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
0.0ms
c
@inf
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))

rewrite131.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
986×swap-sqr
540×associate-/r/
526×distribute-rgt-in
500×distribute-lft-neg-in
490×distribute-lft-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01150
125044
2378344
Stop Event
node limit
Counts
2 → 157
Calls
Call 1
Inputs
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(*.f64 (/.f64 b d) (/.f64 c d))
Outputs
(((+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (/.f64 a (neg.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (fma.f64 (/.f64 -1 d) a (/.f64 a d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (*.f64 1 (fma.f64 (/.f64 -1 d) a (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (*.f64 1 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (*.f64 1 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (*.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) 1)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (*.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) 1)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) 1)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) 1)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 a (neg.f64 d)) (/.f64 b (/.f64 (*.f64 d d) c))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 -1 d) a (/.f64 a d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a (neg.f64 d)) 1 (/.f64 a d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (exp.f64 (log1p.f64 (/.f64 a d)))) 1) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) 1) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) d) a) d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (/.f64 (*.f64 b c) d) a) d)) (sqrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 (/.f64 (*.f64 b c) d) a) d)) (pow.f64 (cbrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) 2)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 (/.f64 (*.f64 b c) d) a) d)) 2) (cbrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (/.f64 1 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (-.f64 (/.f64 (*.f64 b c) d) a)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (+.f64 (neg.f64 a) (/.f64 (*.f64 b c) d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 (*.f64 b c)) d) (sqrt.f64 (/.f64 a d))) (-.f64 (/.f64 (sqrt.f64 (*.f64 b c)) d) (sqrt.f64 (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b d) (/.f64 c d) (/.f64 a d))) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2))) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3))) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a (neg.f64 d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 (/.f64 (*.f64 b c) d) d) (*.f64 d a))) (*.f64 d d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 d (*.f64 (/.f64 (*.f64 b c) d) (/.f64 d a)))) (*.f64 d (/.f64 d a))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 (/.f64 (*.f64 b c) d) (neg.f64 d)) (*.f64 d (neg.f64 a)))) (*.f64 d (neg.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 (*.f64 b c) d) (*.f64 (*.f64 d d) a))) (pow.f64 d 3)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 d d) (*.f64 (*.f64 b c) (/.f64 d a)))) (*.f64 (*.f64 d d) (/.f64 d a))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 (*.f64 b c) (neg.f64 d)) (*.f64 (*.f64 d d) (neg.f64 a)))) (neg.f64 (pow.f64 d 3))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (/.f64 b (/.f64 (*.f64 d d) c))) (*.f64 (pow.f64 (/.f64 a d) 2) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) 3) (pow.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (/.f64 b (/.f64 (*.f64 d d) c))) (*.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (-.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2))))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (/.f64 (*.f64 d d) c)) 3) (/.f64 b (/.f64 (*.f64 d d) c))) (*.f64 (pow.f64 (/.f64 a d) 3) (/.f64 a d))) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3)) (*.f64 (pow.f64 (/.f64 a d) 3) (pow.f64 (/.f64 a d) 3))) (*.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a (neg.f64 d)) 3)) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (-.f64 (pow.f64 (/.f64 a d) 2) (neg.f64 (/.f64 (*.f64 (*.f64 b c) a) (pow.f64 d 3)))))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (/.f64 (*.f64 d d) c)) 2) 3) (pow.f64 (pow.f64 (/.f64 a d) 2) 3)) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (+.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (/.f64 b (/.f64 (*.f64 d d) c))) (*.f64 (pow.f64 (/.f64 a d) 2) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)))))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (/.f64 (*.f64 d d) c)) 3) 3) (pow.f64 (pow.f64 (/.f64 a d) 3) 3)) (*.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) (+.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3)) (*.f64 (pow.f64 (/.f64 a d) 3) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)))))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) a) d) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) d) (*.f64 d a)) (*.f64 d d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) (/.f64 d a)) d) (*.f64 d (/.f64 d a))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) (neg.f64 d)) (*.f64 d (neg.f64 a))) (*.f64 d (neg.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) (*.f64 (*.f64 d d) a)) (pow.f64 d 3)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (/.f64 d a)) (*.f64 d d)) (*.f64 (*.f64 d d) (/.f64 d a))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (neg.f64 d)) (*.f64 (*.f64 d d) (neg.f64 a))) (neg.f64 (pow.f64 d 3))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (/.f64 (*.f64 d d) c)) 2)) (pow.f64 (/.f64 a d) 2)) (neg.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (/.f64 (*.f64 d d) c)) 3)) (pow.f64 (/.f64 a d) 3)) (neg.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (*.f64 b c) d) a) d) 1) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (*.f64 b c) d) a) d)) 2) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (*.f64 b c) d) a) d)) 3) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (*.f64 b c) d) a) d) 3) 1/3) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (neg.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (neg.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (*.f64 b c) d) a) d) 2)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (*.f64 b c) d) a) d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (*.f64 b c) d) a) d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (*.f64 b c) d) a) d) 3)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (*.f64 b c) d) a) d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (*.f64 b c) d) a) d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (*.f64 b c) d) a) d)) 1)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (*.f64 b c) d) a) d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) (/.f64 b d) (/.f64 a (neg.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c)) (/.f64 a (neg.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c)) d) (/.f64 (sqrt.f64 (*.f64 b c)) d) (/.f64 a (neg.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c))) 2) (cbrt.f64 (/.f64 b (/.f64 (*.f64 d d) c))) (/.f64 a (neg.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b (/.f64 (*.f64 d d) c)))) 1) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 b (/.f64 (*.f64 d d) c)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 b (*.f64 d (/.f64 d c))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 b (*.f64 (/.f64 d c) d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 b d) (/.f64 d c)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 c (*.f64 (/.f64 d b) d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 c (*.f64 d (/.f64 d b))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 c d) (/.f64 d b)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 (*.f64 b c) d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d d) (*.f64 b c))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c) (*.f64 (/.f64 d b) (/.f64 d (sqrt.f64 c)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b) (*.f64 (/.f64 d c) (/.f64 d (sqrt.f64 b)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c) 2) (*.f64 (/.f64 d b) (/.f64 d (cbrt.f64 c)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b) 2) (*.f64 (/.f64 d c) (/.f64 d (cbrt.f64 b)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 b c) d) d) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 b c) (*.f64 d d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b) (*.f64 (neg.f64 d) (/.f64 d c))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b) (*.f64 (/.f64 d c) (neg.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c) (*.f64 (/.f64 d b) (neg.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c) (*.f64 (neg.f64 d) (/.f64 d b))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 c (neg.f64 b)) (*.f64 d (neg.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 c (*.f64 (sqrt.f64 d) (/.f64 d b))) (sqrt.f64 d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) d) (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 b 1) (*.f64 (/.f64 d c) d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 b (sqrt.f64 d)) (*.f64 (/.f64 d c) (sqrt.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 b (pow.f64 (cbrt.f64 d) 2)) (*.f64 (/.f64 d c) (cbrt.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 c 1) (*.f64 (/.f64 d b) d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 c (sqrt.f64 d)) (*.f64 (/.f64 d b) (sqrt.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 c (pow.f64 (cbrt.f64 d) 2)) (*.f64 (/.f64 d b) (cbrt.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d c) (/.f64 d (neg.f64 b)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d b) (/.f64 d (neg.f64 c)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) (neg.f64 c)) (*.f64 d d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 b d) (neg.f64 c)) (neg.f64 d)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c)) 1) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c)) d) 2) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c))) 3) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c)) 3) 1/3) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (neg.f64 d)) (/.f64 c d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (neg.f64 d)) (/.f64 b d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b d) (/.f64 c (neg.f64 d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) (/.f64 b (neg.f64 d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (neg.f64 d)) (/.f64 d c))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (neg.f64 d)) (/.f64 d b))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 (/.f64 d c) (neg.f64 d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (*.f64 (/.f64 d b) (neg.f64 d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) d) (neg.f64 d))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 d (neg.f64 d)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c)) 2)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c))))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c)) 3)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c))) 1)) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 (*.f64 d d) c)))) #(struct:egraph-query ((-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (*.f64 (/.f64 b d) (/.f64 c d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify168.0ms (1.2%)

Algorithm
egg-herbie
Rules
1042×+-commutative
858×associate-+r-
806×fma-def
700×associate-+l-
508×associate-*r*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
041910873
1120810135
2570310115
Stop Event
node limit
Counts
241 → 274
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (/.f64 a (neg.f64 d)))
(+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 1 (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 1 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 1 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) 1))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) 1))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) 1))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) 1))
(+.f64 (/.f64 a (neg.f64 d)) (/.f64 b (/.f64 (*.f64 d d) c)))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))
(+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))
(+.f64 (-.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (exp.f64 (log1p.f64 (/.f64 a d)))) 1)
(*.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) 1)
(*.f64 1 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) (sqrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))
(*.f64 (cbrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) (pow.f64 (cbrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) 2) (cbrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))
(*.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (/.f64 1 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(*.f64 (/.f64 1 d) (-.f64 (/.f64 (*.f64 b c) d) a))
(*.f64 (/.f64 1 d) (+.f64 (neg.f64 a) (/.f64 (*.f64 b c) d)))
(*.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))))
(*.f64 (+.f64 (/.f64 (sqrt.f64 (*.f64 b c)) d) (sqrt.f64 (/.f64 a d))) (-.f64 (/.f64 (sqrt.f64 (*.f64 b c)) d) (sqrt.f64 (/.f64 a d))))
(*.f64 (/.f64 1 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)))
(*.f64 (/.f64 1 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2))) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3))) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a (neg.f64 d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 (/.f64 (*.f64 b c) d) d) (*.f64 d a))) (*.f64 d d))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 d (*.f64 (/.f64 (*.f64 b c) d) (/.f64 d a)))) (*.f64 d (/.f64 d a)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 (/.f64 (*.f64 b c) d) (neg.f64 d)) (*.f64 d (neg.f64 a)))) (*.f64 d (neg.f64 d)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 (*.f64 b c) d) (*.f64 (*.f64 d d) a))) (pow.f64 d 3))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 d d) (*.f64 (*.f64 b c) (/.f64 d a)))) (*.f64 (*.f64 d d) (/.f64 d a)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 (*.f64 b c) (neg.f64 d)) (*.f64 (*.f64 d d) (neg.f64 a)))) (neg.f64 (pow.f64 d 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (/.f64 b (/.f64 (*.f64 d d) c))) (*.f64 (pow.f64 (/.f64 a d) 2) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) 3) (pow.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (/.f64 b (/.f64 (*.f64 d d) c))) (*.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (-.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2)))))
(/.f64 1 (/.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3))))
(/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))
(/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (/.f64 b (/.f64 (*.f64 d d) c))) (*.f64 (pow.f64 (/.f64 a d) 3) (/.f64 a d))) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3)) (*.f64 (pow.f64 (/.f64 a d) 3) (pow.f64 (/.f64 a d) 3))) (*.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3))))
(/.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a (neg.f64 d)) 3)) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (-.f64 (pow.f64 (/.f64 a d) 2) (neg.f64 (/.f64 (*.f64 (*.f64 b c) a) (pow.f64 d 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) 3) (pow.f64 (pow.f64 (/.f64 a d) 2) 3)) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (+.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (/.f64 b (/.f64 (*.f64 d d) c))) (*.f64 (pow.f64 (/.f64 a d) 2) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) 3) (pow.f64 (pow.f64 (/.f64 a d) 3) 3)) (*.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) (+.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3)) (*.f64 (pow.f64 (/.f64 a d) 3) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3))))))
(/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 b c) d) d) (*.f64 d a)) (*.f64 d d))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 b c) d) (/.f64 d a)) d) (*.f64 d (/.f64 d a)))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 b c) d) (neg.f64 d)) (*.f64 d (neg.f64 a))) (*.f64 d (neg.f64 d)))
(/.f64 (-.f64 (*.f64 (*.f64 b c) d) (*.f64 (*.f64 d d) a)) (pow.f64 d 3))
(/.f64 (-.f64 (*.f64 (*.f64 b c) (/.f64 d a)) (*.f64 d d)) (*.f64 (*.f64 d d) (/.f64 d a)))
(/.f64 (-.f64 (*.f64 (*.f64 b c) (neg.f64 d)) (*.f64 (*.f64 d d) (neg.f64 a))) (neg.f64 (pow.f64 d 3)))
(/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2)) (pow.f64 (/.f64 a d) 2)) (neg.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3)) (pow.f64 (/.f64 a d) 3)) (neg.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))))
(pow.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) 1)
(pow.f64 (sqrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) 2)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) 3)
(pow.f64 (pow.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) 3) 1/3)
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (neg.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (neg.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) 2))
(log.f64 (exp.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) 3))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))
(exp.f64 (log.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) 1))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))
(fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d)))
(fma.f64 (/.f64 c d) (/.f64 b d) (/.f64 a (neg.f64 d)))
(fma.f64 1 (/.f64 b (/.f64 (*.f64 d d) c)) (/.f64 a (neg.f64 d)))
(fma.f64 (/.f64 (sqrt.f64 (*.f64 b c)) d) (/.f64 (sqrt.f64 (*.f64 b c)) d) (/.f64 a (neg.f64 d)))
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 b (/.f64 (*.f64 d d) c))) 2) (cbrt.f64 (/.f64 b (/.f64 (*.f64 d d) c))) (/.f64 a (neg.f64 d)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 b (/.f64 (*.f64 d d) c)))) 1)
(/.f64 b (/.f64 (*.f64 d d) c))
(/.f64 b (*.f64 d (/.f64 d c)))
(/.f64 b (*.f64 (/.f64 d c) d))
(/.f64 (/.f64 b d) (/.f64 d c))
(/.f64 c (*.f64 (/.f64 d b) d))
(/.f64 c (*.f64 d (/.f64 d b)))
(/.f64 (/.f64 c d) (/.f64 d b))
(/.f64 1 (/.f64 d (/.f64 (*.f64 b c) d)))
(/.f64 1 (/.f64 (*.f64 d d) (*.f64 b c)))
(/.f64 (sqrt.f64 c) (*.f64 (/.f64 d b) (/.f64 d (sqrt.f64 c))))
(/.f64 (sqrt.f64 b) (*.f64 (/.f64 d c) (/.f64 d (sqrt.f64 b))))
(/.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (/.f64 d b) (/.f64 d (cbrt.f64 c))))
(/.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (/.f64 d c) (/.f64 d (cbrt.f64 b))))
(/.f64 (/.f64 (*.f64 b c) d) d)
(/.f64 (*.f64 b c) (*.f64 d d))
(/.f64 (neg.f64 b) (*.f64 (neg.f64 d) (/.f64 d c)))
(/.f64 (neg.f64 b) (*.f64 (/.f64 d c) (neg.f64 d)))
(/.f64 (neg.f64 c) (*.f64 (/.f64 d b) (neg.f64 d)))
(/.f64 (neg.f64 c) (*.f64 (neg.f64 d) (/.f64 d b)))
(/.f64 (*.f64 c (neg.f64 b)) (*.f64 d (neg.f64 d)))
(/.f64 (/.f64 c (*.f64 (sqrt.f64 d) (/.f64 d b))) (sqrt.f64 d))
(/.f64 (/.f64 (/.f64 (*.f64 b c) d) (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d))
(/.f64 (/.f64 b 1) (*.f64 (/.f64 d c) d))
(/.f64 (/.f64 b (sqrt.f64 d)) (*.f64 (/.f64 d c) (sqrt.f64 d)))
(/.f64 (/.f64 b (pow.f64 (cbrt.f64 d) 2)) (*.f64 (/.f64 d c) (cbrt.f64 d)))
(/.f64 (/.f64 c 1) (*.f64 (/.f64 d b) d))
(/.f64 (/.f64 c (sqrt.f64 d)) (*.f64 (/.f64 d b) (sqrt.f64 d)))
(/.f64 (/.f64 c (pow.f64 (cbrt.f64 d) 2)) (*.f64 (/.f64 d b) (cbrt.f64 d)))
(/.f64 -1 (*.f64 (/.f64 d c) (/.f64 d (neg.f64 b))))
(/.f64 -1 (*.f64 (/.f64 d b) (/.f64 d (neg.f64 c))))
(/.f64 (*.f64 (neg.f64 b) (neg.f64 c)) (*.f64 d d))
(/.f64 (*.f64 (/.f64 b d) (neg.f64 c)) (neg.f64 d))
(pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 1)
(pow.f64 (/.f64 (sqrt.f64 (*.f64 b c)) d) 2)
(pow.f64 (cbrt.f64 (/.f64 b (/.f64 (*.f64 d d) c))) 3)
(pow.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) 1/3)
(neg.f64 (*.f64 (/.f64 b (neg.f64 d)) (/.f64 c d)))
(neg.f64 (*.f64 (/.f64 c (neg.f64 d)) (/.f64 b d)))
(neg.f64 (*.f64 (/.f64 b d) (/.f64 c (neg.f64 d))))
(neg.f64 (*.f64 (/.f64 c d) (/.f64 b (neg.f64 d))))
(neg.f64 (/.f64 (/.f64 b (neg.f64 d)) (/.f64 d c)))
(neg.f64 (/.f64 (/.f64 c (neg.f64 d)) (/.f64 d b)))
(neg.f64 (/.f64 b (*.f64 (/.f64 d c) (neg.f64 d))))
(neg.f64 (/.f64 c (*.f64 (/.f64 d b) (neg.f64 d))))
(neg.f64 (/.f64 (/.f64 (*.f64 b c) d) (neg.f64 d)))
(neg.f64 (/.f64 (*.f64 b c) (*.f64 d (neg.f64 d))))
(sqrt.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2))
(log.f64 (exp.f64 (/.f64 b (/.f64 (*.f64 d d) c))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 b (/.f64 (*.f64 d d) c)))))
(cbrt.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3))
(expm1.f64 (log1p.f64 (/.f64 b (/.f64 (*.f64 d d) c))))
(exp.f64 (log.f64 (/.f64 b (/.f64 (*.f64 d d) c))))
(exp.f64 (*.f64 (log.f64 (/.f64 b (/.f64 (*.f64 d d) c))) 1))
(log1p.f64 (expm1.f64 (/.f64 b (/.f64 (*.f64 d d) c))))
Outputs
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (/.f64 a (neg.f64 d)))
(fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d)))
(+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)))
(+.f64 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(fma.f64 (/.f64 b d) (/.f64 c d) (+.f64 (/.f64 a d) (*.f64 2 (/.f64 a (neg.f64 d)))))
(+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)))
(+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (/.f64 b d) (/.f64 c d) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))
(+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))
(-.f64 (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)) (/.f64 a d))
(+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (-.f64 (/.f64 a d) (/.f64 a d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)))
(+.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)))
(+.f64 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (*.f64 2 (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(fma.f64 2 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (-.f64 (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)) (/.f64 a d)))
(+.f64 (/.f64 a d) (+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (-.f64 (/.f64 a d) (/.f64 a d)))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (-.f64 (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)) (/.f64 a d)))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (-.f64 (/.f64 a d) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (-.f64 (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)) (/.f64 a d)))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (-.f64 (/.f64 a d) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (-.f64 (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)) (/.f64 a d)))
(+.f64 (/.f64 a d) (+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (-.f64 (/.f64 a d) (/.f64 a d)))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (*.f64 2 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(fma.f64 2 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (+.f64 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (+.f64 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (-.f64 (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)) (/.f64 a d)))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (-.f64 (/.f64 a d) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (+.f64 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (*.f64 2 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(fma.f64 2 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (-.f64 (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)) (/.f64 a d)))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (-.f64 (/.f64 a d) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (+.f64 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) (*.f64 2 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(fma.f64 2 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 1 (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))
(-.f64 (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)) (/.f64 a d))
(+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (-.f64 (/.f64 a d) (/.f64 a d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 1 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)))
(+.f64 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 1 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) 1))
(+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))
(-.f64 (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)) (/.f64 a d))
(+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (-.f64 (/.f64 a d) (/.f64 a d)))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) 1))
(+.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)))
(+.f64 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) 1))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) 1))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 a (neg.f64 d)) (/.f64 b (/.f64 (*.f64 d d) c)))
(fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d)))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (fma.f64 (/.f64 -1 d) a (/.f64 a d))))
(+.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)))
(+.f64 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d))))
(+.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(fma.f64 (/.f64 b d) (/.f64 c d) (+.f64 (/.f64 a d) (*.f64 2 (/.f64 a (neg.f64 d)))))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)))
(+.f64 (/.f64 a (neg.f64 d)) (fma.f64 (/.f64 b d) (/.f64 c d) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d))))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d))))
(+.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)))
(+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))
(+.f64 (fma.f64 (/.f64 -1 d) a (/.f64 a d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))
(-.f64 (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)) (/.f64 a d))
(+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (-.f64 (/.f64 a d) (/.f64 a d)))
(+.f64 (fma.f64 (/.f64 a (neg.f64 d)) 1 (/.f64 a d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))
(+.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d))) (fma.f64 (/.f64 -1 d) a (/.f64 a d)))
(+.f64 (/.f64 a (neg.f64 d)) (+.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 a d)))
(+.f64 (+.f64 (/.f64 a d) (/.f64 a (neg.f64 d))) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 a d))) (sqrt.f64 (/.f64 a d)) (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 a d))) (pow.f64 (cbrt.f64 (/.f64 a d)) 2) (/.f64 a d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(+.f64 (-.f64 (/.f64 b (/.f64 (*.f64 d d) c)) (exp.f64 (log1p.f64 (/.f64 a d)))) 1)
(-.f64 (*.f64 (/.f64 (/.f64 b d) d) c) (-.f64 (exp.f64 (log1p.f64 (/.f64 a d))) 1))
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (expm1.f64 (log1p.f64 (/.f64 a d))))
(*.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) 1)
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 1 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 (sqrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) (sqrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 (cbrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) (pow.f64 (cbrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) 2))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) 2) (cbrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (/.f64 1 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(*.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)) (/.f64 1 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))
(*.f64 (/.f64 1 d) (-.f64 (/.f64 (*.f64 b c) d) a))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 (/.f64 1 d) (+.f64 (neg.f64 a) (/.f64 (*.f64 b c) d)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3) (pow.f64 (/.f64 a d) 3)) 1) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) (pow.f64 (/.f64 a d) 3)) (fma.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2)))
(*.f64 (+.f64 (/.f64 (sqrt.f64 (*.f64 b c)) d) (sqrt.f64 (/.f64 a d))) (-.f64 (/.f64 (sqrt.f64 (*.f64 b c)) d) (sqrt.f64 (/.f64 a d))))
(*.f64 (+.f64 (sqrt.f64 (/.f64 a d)) (/.f64 (sqrt.f64 (*.f64 c b)) d)) (-.f64 (/.f64 (sqrt.f64 (*.f64 c b)) d) (sqrt.f64 (/.f64 a d))))
(*.f64 (/.f64 1 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)))
(*.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)) (/.f64 1 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))
(*.f64 (/.f64 1 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3) (pow.f64 (/.f64 a d) 3)) 1) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) (pow.f64 (/.f64 a d) 3)) (fma.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2))) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3))) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a (neg.f64 d)) (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3) (pow.f64 (/.f64 a d) 3))) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (*.f64 (/.f64 a (neg.f64 d)) (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2)) (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) (pow.f64 (/.f64 a d) 3)) (fma.f64 (/.f64 a (neg.f64 d)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 (/.f64 (*.f64 b c) d) d) (*.f64 d a))) (*.f64 d d))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)) (*.f64 d d)) (fma.f64 (/.f64 b (/.f64 d c)) d (*.f64 a d)))
(/.f64 (*.f64 (*.f64 d d) (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2))) (*.f64 d (+.f64 (*.f64 c (/.f64 b d)) a)))
(/.f64 (*.f64 (*.f64 d d) (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2))) (*.f64 d (+.f64 a (*.f64 c (/.f64 b d)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 d (*.f64 (/.f64 (*.f64 b c) d) (/.f64 d a)))) (*.f64 d (/.f64 d a)))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 d (*.f64 (/.f64 b (/.f64 d c)) (/.f64 d a)))) (/.f64 (*.f64 d d) a))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 (*.f64 c (/.f64 b d)) (/.f64 d a) d)) (*.f64 d (/.f64 d a)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 (/.f64 (*.f64 b c) d) (neg.f64 d)) (*.f64 d (neg.f64 a)))) (*.f64 d (neg.f64 d)))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 (/.f64 b (/.f64 d c)) (neg.f64 d) (neg.f64 (*.f64 a d)))) (*.f64 d (neg.f64 d)))
(*.f64 (neg.f64 d) (*.f64 d (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2)) (neg.f64 (*.f64 d (+.f64 (*.f64 c (/.f64 b d)) a))))))
(*.f64 (neg.f64 d) (*.f64 d (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2)) (*.f64 (neg.f64 d) (+.f64 a (*.f64 c (/.f64 b d)))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 (*.f64 b c) d) (*.f64 (*.f64 d d) a))) (pow.f64 d 3))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 (*.f64 c b) d (*.f64 a (*.f64 d d)))) (pow.f64 d 3))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2)) (*.f64 d (+.f64 (*.f64 c b) (*.f64 a d)))) (pow.f64 d 3))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 d d) (*.f64 (*.f64 b c) (/.f64 d a)))) (*.f64 (*.f64 d d) (/.f64 d a)))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 d d (*.f64 (*.f64 c b) (/.f64 d a)))) (/.f64 (pow.f64 d 3) a))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 d d (/.f64 b (/.f64 a (*.f64 d c))))) (/.f64 (pow.f64 d 3) a))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (+.f64 (*.f64 (*.f64 b c) (neg.f64 d)) (*.f64 (*.f64 d d) (neg.f64 a)))) (neg.f64 (pow.f64 d 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 (*.f64 c b) (neg.f64 d) (*.f64 d (neg.f64 (*.f64 a d))))) (neg.f64 (pow.f64 d 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2)) (neg.f64 (*.f64 d (+.f64 (*.f64 c b) (*.f64 a d))))) (pow.f64 (neg.f64 d) 3))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2)) (*.f64 (neg.f64 d) (+.f64 (*.f64 c b) (*.f64 a d)))) (pow.f64 (neg.f64 d) 3))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (/.f64 b (/.f64 (*.f64 d d) c))) (*.f64 (pow.f64 (/.f64 a d) 2) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3) (pow.f64 (/.f64 a d) 3)) (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 4) (*.f64 (*.f64 (pow.f64 (/.f64 a d) 2) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))) (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) (pow.f64 (/.f64 a d) 3)) (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 4) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (*.f64 (pow.f64 (/.f64 a d) 2) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))) (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) 3) (pow.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (/.f64 b (/.f64 (*.f64 d d) c))) (*.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (-.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3) (pow.f64 (/.f64 a d) 3)) (+.f64 (pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) 3) (pow.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) 3))) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 4) (*.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (-.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) (pow.f64 (/.f64 a d) 3)) (fma.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (-.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2)) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 4))) (+.f64 (pow.f64 (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) 3) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 6)))
(/.f64 1 (/.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2))))
(*.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)) (/.f64 1 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3) (pow.f64 (/.f64 a d) 3)) 1) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) (pow.f64 (/.f64 a d) 3)) (fma.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2)))
(/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))
(*.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)) (/.f64 1 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))
(/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3) (pow.f64 (/.f64 a d) 3)) 1) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) (pow.f64 (/.f64 a d) 3)) (fma.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2)))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (/.f64 b (/.f64 (*.f64 d d) c))) (*.f64 (pow.f64 (/.f64 a d) 3) (/.f64 a d))) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 4) (pow.f64 (/.f64 a d) 4)) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 4) (pow.f64 (/.f64 a d) 4)) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (+.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3)) (*.f64 (pow.f64 (/.f64 a d) 3) (pow.f64 (/.f64 a d) 3))) (*.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 6) (pow.f64 (/.f64 a d) 6)) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3) (pow.f64 (/.f64 a d) 3))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 6) (pow.f64 (/.f64 a d) 6)) (+.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) (pow.f64 (/.f64 a d) 3))) (fma.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2)))
(/.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a (neg.f64 d)) 3)) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (-.f64 (pow.f64 (/.f64 a d) 2) (neg.f64 (/.f64 (*.f64 (*.f64 b c) a) (pow.f64 d 3))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3) (pow.f64 (/.f64 a (neg.f64 d)) 3)) (-.f64 (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)) (/.f64 (neg.f64 (*.f64 a (*.f64 c b))) (pow.f64 d 3))))
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) (pow.f64 (/.f64 a (neg.f64 d)) 3)) (fma.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2)))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) 3) (pow.f64 (pow.f64 (/.f64 a d) 2) 3)) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (+.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (/.f64 b (/.f64 (*.f64 d d) c))) (*.f64 (pow.f64 (/.f64 a d) 2) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) 3) (pow.f64 (pow.f64 (/.f64 a d) 2) 3)) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 4) (*.f64 (pow.f64 (/.f64 a d) 2) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (pow.f64 (/.f64 a d) 2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 6) (pow.f64 (/.f64 a d) 6)) (*.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (+.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 4) (fma.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2) (pow.f64 (/.f64 a d) 2) (pow.f64 (/.f64 a d) 4)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) 3) (pow.f64 (pow.f64 (/.f64 a d) 3) 3)) (*.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) (+.f64 (*.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3)) (*.f64 (pow.f64 (/.f64 a d) 3) (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3) 3) (pow.f64 (pow.f64 (/.f64 a d) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 6) (*.f64 (pow.f64 (/.f64 a d) 3) (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3) (pow.f64 (/.f64 a d) 3))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) 3) (pow.f64 (pow.f64 (/.f64 a d) 3) 3)) (fma.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2))) (fma.f64 (pow.f64 (/.f64 a d) 3) (+.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) (pow.f64 (/.f64 a d) 3)) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 6)))
(/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 b c) d) d) (*.f64 d a)) (*.f64 d d))
(/.f64 (-.f64 (/.f64 (*.f64 b (*.f64 c d)) d) (*.f64 a d)) (*.f64 d d))
(/.f64 (*.f64 d (-.f64 (*.f64 c (/.f64 b d)) a)) (*.f64 d d))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 b c) d) (/.f64 d a)) d) (*.f64 d (/.f64 d a)))
(/.f64 (fma.f64 (/.f64 b (/.f64 d c)) (/.f64 d a) (neg.f64 d)) (/.f64 (*.f64 d d) a))
(*.f64 (/.f64 (-.f64 (*.f64 (*.f64 c (/.f64 b d)) (/.f64 d a)) d) (*.f64 d d)) a)
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 b c) d) (neg.f64 d)) (*.f64 d (neg.f64 a))) (*.f64 d (neg.f64 d)))
(/.f64 (-.f64 (/.f64 (neg.f64 (*.f64 b (*.f64 c d))) d) (neg.f64 (*.f64 a d))) (*.f64 d (neg.f64 d)))
(/.f64 (*.f64 (neg.f64 d) (-.f64 (*.f64 c (/.f64 b d)) a)) (*.f64 d (neg.f64 d)))
(/.f64 (*.f64 d (+.f64 (neg.f64 (*.f64 c (/.f64 b d))) a)) (*.f64 d (neg.f64 d)))
(/.f64 (-.f64 (*.f64 (*.f64 b c) d) (*.f64 (*.f64 d d) a)) (pow.f64 d 3))
(/.f64 (-.f64 (*.f64 b (*.f64 c d)) (*.f64 a (*.f64 d d))) (pow.f64 d 3))
(/.f64 (*.f64 d (-.f64 (*.f64 c b) (*.f64 a d))) (pow.f64 d 3))
(/.f64 (-.f64 (*.f64 (*.f64 b c) (/.f64 d a)) (*.f64 d d)) (*.f64 (*.f64 d d) (/.f64 d a)))
(/.f64 (-.f64 (*.f64 (*.f64 c b) (/.f64 d a)) (*.f64 d d)) (/.f64 (pow.f64 d 3) a))
(*.f64 (/.f64 (-.f64 (/.f64 b (/.f64 a (*.f64 d c))) (*.f64 d d)) (pow.f64 d 3)) a)
(/.f64 (-.f64 (*.f64 (*.f64 b c) (neg.f64 d)) (*.f64 (*.f64 d d) (neg.f64 a))) (neg.f64 (pow.f64 d 3)))
(/.f64 (-.f64 (neg.f64 (*.f64 b (*.f64 c d))) (*.f64 d (neg.f64 (*.f64 a d)))) (neg.f64 (pow.f64 d 3)))
(/.f64 (neg.f64 (*.f64 d (-.f64 (*.f64 c b) (*.f64 a d)))) (pow.f64 (neg.f64 d) 3))
(/.f64 (*.f64 d (+.f64 (*.f64 a d) (*.f64 c (neg.f64 b)))) (pow.f64 (neg.f64 d) 3))
(/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2)) (pow.f64 (/.f64 a d) 2)) (neg.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(/.f64 (+.f64 (pow.f64 (/.f64 a d) 2) (neg.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2))) (neg.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(/.f64 (-.f64 (pow.f64 (/.f64 a d) 2) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2)) (neg.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3)) (pow.f64 (/.f64 a d) 3)) (neg.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))))
(/.f64 (+.f64 (pow.f64 (/.f64 a d) 3) (neg.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (/.f64 a d) 3) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3)) (neg.f64 (fma.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2))))
(pow.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) 1)
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(pow.f64 (sqrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) 2)
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) 3)
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(pow.f64 (pow.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) 3) 1/3)
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (pow.f64 (/.f64 a d) 2)) (neg.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))
(/.f64 (+.f64 (pow.f64 (/.f64 a d) 2) (neg.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2))) (neg.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(/.f64 (-.f64 (pow.f64 (/.f64 a d) 2) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2)) (neg.f64 (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) (pow.f64 (/.f64 a d) 3)) (neg.f64 (+.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 a d) 3) (neg.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2) (*.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d))))))
(/.f64 (-.f64 (pow.f64 (/.f64 a d) 3) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3)) (neg.f64 (fma.f64 (/.f64 a d) (fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a d)) (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2))))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) 2))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (/.f64 b (/.f64 d c)) a) d) 2))
(fabs.f64 (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))
(log.f64 (exp.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d))))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d) 3))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(expm1.f64 (log1p.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(exp.f64 (log.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)) 1))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(log1p.f64 (expm1.f64 (/.f64 (-.f64 (/.f64 (*.f64 b c) d) a) d)))
(fma.f64 -1 (/.f64 a d) (*.f64 (/.f64 (/.f64 b d) d) c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d)))
(fma.f64 (/.f64 c d) (/.f64 b d) (/.f64 a (neg.f64 d)))
(fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d)))
(fma.f64 1 (/.f64 b (/.f64 (*.f64 d d) c)) (/.f64 a (neg.f64 d)))
(fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d)))
(fma.f64 (/.f64 (sqrt.f64 (*.f64 b c)) d) (/.f64 (sqrt.f64 (*.f64 b c)) d) (/.f64 a (neg.f64 d)))
(+.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 c b)) d) 2) (/.f64 a (neg.f64 d)))
(+.f64 (/.f64 a (neg.f64 d)) (pow.f64 (/.f64 (sqrt.f64 (*.f64 c b)) d) 2))
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 b (/.f64 (*.f64 d d) c))) 2) (cbrt.f64 (/.f64 b (/.f64 (*.f64 d d) c))) (/.f64 a (neg.f64 d)))
(fma.f64 (/.f64 b d) (/.f64 c d) (/.f64 a (neg.f64 d)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 b (/.f64 (*.f64 d d) c)))) 1)
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 b (/.f64 (*.f64 d d) c))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 b (*.f64 d (/.f64 d c)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 b (*.f64 (/.f64 d c) d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (/.f64 b d) (/.f64 d c))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 c (*.f64 (/.f64 d b) d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 c (*.f64 d (/.f64 d b)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (/.f64 c d) (/.f64 d b))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 1 (/.f64 d (/.f64 (*.f64 b c) d)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 1 (/.f64 (*.f64 d d) (*.f64 b c)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (sqrt.f64 c) (*.f64 (/.f64 d b) (/.f64 d (sqrt.f64 c))))
(/.f64 (sqrt.f64 c) (/.f64 (*.f64 d (/.f64 d b)) (sqrt.f64 c)))
(*.f64 (/.f64 (sqrt.f64 c) (/.f64 d (/.f64 b d))) (sqrt.f64 c))
(/.f64 (sqrt.f64 b) (*.f64 (/.f64 d c) (/.f64 d (sqrt.f64 b))))
(/.f64 (sqrt.f64 b) (/.f64 (/.f64 (*.f64 d d) c) (sqrt.f64 b)))
(/.f64 (/.f64 (sqrt.f64 b) (/.f64 d c)) (/.f64 d (sqrt.f64 b)))
(/.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (/.f64 d b) (/.f64 d (cbrt.f64 c))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) (/.f64 d (/.f64 b d))) (cbrt.f64 c))
(/.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (/.f64 d c) (/.f64 d (cbrt.f64 b))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 d (/.f64 d c))) (cbrt.f64 b))
(/.f64 (/.f64 (*.f64 b c) d) d)
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 b c) (*.f64 d d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (neg.f64 b) (*.f64 (neg.f64 d) (/.f64 d c)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (neg.f64 b) (*.f64 (/.f64 d c) (neg.f64 d)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (neg.f64 c) (*.f64 (/.f64 d b) (neg.f64 d)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (neg.f64 c) (*.f64 (neg.f64 d) (/.f64 d b)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 c (neg.f64 b)) (*.f64 d (neg.f64 d)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (/.f64 c (*.f64 (sqrt.f64 d) (/.f64 d b))) (sqrt.f64 d))
(/.f64 (/.f64 c (sqrt.f64 d)) (*.f64 (/.f64 d b) (sqrt.f64 d)))
(*.f64 (/.f64 (/.f64 c (sqrt.f64 d)) (*.f64 d (sqrt.f64 d))) b)
(/.f64 (/.f64 (/.f64 (*.f64 b c) d) (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (/.f64 b 1) (*.f64 (/.f64 d c) d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (/.f64 b (sqrt.f64 d)) (*.f64 (/.f64 d c) (sqrt.f64 d)))
(/.f64 (/.f64 b (pow.f64 (cbrt.f64 d) 2)) (*.f64 (/.f64 d c) (cbrt.f64 d)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (/.f64 c 1) (*.f64 (/.f64 d b) d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (/.f64 c (sqrt.f64 d)) (*.f64 (/.f64 d b) (sqrt.f64 d)))
(*.f64 (/.f64 (/.f64 c (sqrt.f64 d)) (*.f64 d (sqrt.f64 d))) b)
(/.f64 (/.f64 c (pow.f64 (cbrt.f64 d) 2)) (*.f64 (/.f64 d b) (cbrt.f64 d)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 -1 (*.f64 (/.f64 d c) (/.f64 d (neg.f64 b))))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 -1 (*.f64 (/.f64 d b) (/.f64 d (neg.f64 c))))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 (neg.f64 b) (neg.f64 c)) (*.f64 d d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 (*.f64 (/.f64 b d) (neg.f64 c)) (neg.f64 d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 1)
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 b c)) d) 2)
(pow.f64 (/.f64 (sqrt.f64 (*.f64 c b)) d) 2)
(pow.f64 (cbrt.f64 (/.f64 b (/.f64 (*.f64 d d) c))) 3)
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(pow.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3) 1/3)
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(neg.f64 (*.f64 (/.f64 b (neg.f64 d)) (/.f64 c d)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(neg.f64 (*.f64 (/.f64 c (neg.f64 d)) (/.f64 b d)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(neg.f64 (*.f64 (/.f64 b d) (/.f64 c (neg.f64 d))))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(neg.f64 (*.f64 (/.f64 c d) (/.f64 b (neg.f64 d))))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(neg.f64 (/.f64 (/.f64 b (neg.f64 d)) (/.f64 d c)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(neg.f64 (/.f64 (/.f64 c (neg.f64 d)) (/.f64 d b)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(neg.f64 (/.f64 b (*.f64 (/.f64 d c) (neg.f64 d))))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(neg.f64 (/.f64 c (*.f64 (/.f64 d b) (neg.f64 d))))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(neg.f64 (/.f64 (/.f64 (*.f64 b c) d) (neg.f64 d)))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(neg.f64 (/.f64 (*.f64 b c) (*.f64 d (neg.f64 d))))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(sqrt.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 2))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 b d) d) c) 2))
(fabs.f64 (*.f64 (/.f64 b d) (/.f64 c d)))
(log.f64 (exp.f64 (/.f64 b (/.f64 (*.f64 d d) c))))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 b (/.f64 (*.f64 d d) c)))))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(cbrt.f64 (pow.f64 (/.f64 b (/.f64 (*.f64 d d) c)) 3))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(expm1.f64 (log1p.f64 (/.f64 b (/.f64 (*.f64 d d) c))))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(exp.f64 (log.f64 (/.f64 b (/.f64 (*.f64 d d) c))))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(exp.f64 (*.f64 (log.f64 (/.f64 b (/.f64 (*.f64 d d) c))) 1))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))
(log1p.f64 (expm1.f64 (/.f64 b (/.f64 (*.f64 d d) c))))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 b d) (/.f64 c d))

localize67.0ms (0.5%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
74.8%
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
Compiler

Compiled 34 to 9 computations (73.5% saved)

series3.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
b
@inf
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
0.0ms
b
@0
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
0.0ms
c
@inf
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
0.0ms
c
@0
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
0.0ms
d
@inf
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))

rewrite102.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1438×associate-/r*
1350×associate-/l*
1342×associate-*r/
1100×*-commutative
960×associate-*l/
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01027
121725
2311225
Stop Event
node limit
Counts
1 → 59
Calls
Call 1
Inputs
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
Outputs
(((-.f64 (exp.f64 (log1p.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))) 1) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 c b) (/.f64 1 (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 1) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c b)) (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c b)) (hypot.f64 c d)) (/.f64 (sqrt.f64 (*.f64 c b)) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c b)) 2) (/.f64 (cbrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))) (cbrt.f64 (pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 2)) (cbrt.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (-.f64 (*.f64 d d) (*.f64 c c)) (/.f64 (*.f64 c b) (-.f64 (pow.f64 d 4) (pow.f64 c 4)))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d) 2)) (*.f64 c b)) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c 4) (-.f64 (pow.f64 d 4) (pow.f64 (*.f64 c d) 2))) (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 6) (pow.f64 c 6)))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 c (neg.f64 b)) (/.f64 -1 (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c b)) (pow.f64 (hypot.f64 c d) 2)) (sqrt.f64 (*.f64 c b))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c b)) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (sqrt.f64 (*.f64 c b)) 1)) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c b)) (pow.f64 (hypot.f64 c d) 2)) (pow.f64 (cbrt.f64 (*.f64 c b)) 2)) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c b)) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) 1)) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d)) (/.f64 c (/.f64 (hypot.f64 c d) b))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d) 2)) 2)) (/.f64 (*.f64 c b) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) (/.f64 1 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) (/.f64 c 1)) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b (hypot.f64 c d)) (/.f64 c (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 c b) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) (/.f64 b 1)) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 c b) (-.f64 (pow.f64 d 4) (pow.f64 c 4))) (-.f64 (*.f64 d d) (*.f64 c c))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 6) (pow.f64 c 6))) (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (pow.f64 (*.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d) 2)) (*.f64 c (neg.f64 b))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c 1) (/.f64 b (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (hypot.f64 c d)) (/.f64 b (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b 1) (/.f64 c (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 c (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 b (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c b)) 1) (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c b)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 (sqrt.f64 (*.f64 c b)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c b)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c b)) 2) 1) (/.f64 (cbrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c b)) 2) (hypot.f64 c d)) (/.f64 (cbrt.f64 (*.f64 c b)) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c b)) (hypot.f64 c d)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c b)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (cbrt.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 1) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c b)) (hypot.f64 c d)) 2) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))) 3) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 3) 1/3) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) 2) (*.f64 c b)) -1) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 (neg.f64 (pow.f64 (hypot.f64 c d) 2)) b))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 2)) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 3)) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify95.0ms (0.7%)

Algorithm
egg-herbie
Rules
1692×associate-/l*
1342×times-frac
1332×associate-+r-
932×associate-/r*
616×*-commutative
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01773949
14923799
218733681
375213681
Stop Event
node limit
Counts
95 → 105
Calls
Call 1
Inputs
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (+.f64 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 7))))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (+.f64 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 7))))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (+.f64 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 7))))))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))) 1)
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (*.f64 c b) (/.f64 1 (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 1)
(*.f64 1 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (sqrt.f64 (*.f64 c b)) (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (hypot.f64 c d)) (/.f64 (sqrt.f64 (*.f64 c b)) (hypot.f64 c d)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (/.f64 (cbrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (cbrt.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))) (cbrt.f64 (pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 2)))
(*.f64 (cbrt.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 2)) (cbrt.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))
(*.f64 (-.f64 (*.f64 d d) (*.f64 c c)) (/.f64 (*.f64 c b) (-.f64 (pow.f64 d 4) (pow.f64 c 4))))
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 2)) (*.f64 c b))
(*.f64 (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (pow.f64 (*.f64 c d) 2))) (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 6) (pow.f64 c 6))))
(*.f64 (*.f64 c (neg.f64 b)) (/.f64 -1 (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)) (sqrt.f64 (*.f64 c b)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (sqrt.f64 (*.f64 c b)) 1))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)) (pow.f64 (cbrt.f64 (*.f64 c b)) 2))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) 1))
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 c (/.f64 (hypot.f64 c d) b)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 (*.f64 c b) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) (/.f64 1 (hypot.f64 c d)))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c)
(*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) (/.f64 c 1))
(*.f64 (/.f64 b (hypot.f64 c d)) (/.f64 c (hypot.f64 c d)))
(*.f64 (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (/.f64 (*.f64 c b) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b)
(*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) (/.f64 b 1))
(*.f64 (/.f64 (*.f64 c b) (-.f64 (pow.f64 d 4) (pow.f64 c 4))) (-.f64 (*.f64 d d) (*.f64 c c)))
(*.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 6) (pow.f64 c 6))) (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (pow.f64 (*.f64 c d) 2))))
(*.f64 (/.f64 -1 (pow.f64 (hypot.f64 c d) 2)) (*.f64 c (neg.f64 b)))
(*.f64 (/.f64 c 1) (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (/.f64 c (hypot.f64 c d)) (/.f64 b (hypot.f64 c d)))
(*.f64 (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (/.f64 b 1) (/.f64 c (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (/.f64 b (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 c (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (/.f64 c (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 b (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 c b)) 1) (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 (sqrt.f64 (*.f64 c b)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) 1) (/.f64 (cbrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (hypot.f64 c d)) (/.f64 (cbrt.f64 (*.f64 c b)) (hypot.f64 c d)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c b)) (hypot.f64 c d)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (hypot.f64 c d)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (cbrt.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))
(pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 1)
(pow.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (hypot.f64 c d)) 2)
(pow.f64 (cbrt.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))) 3)
(pow.f64 (pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 3) 1/3)
(pow.f64 (/.f64 (pow.f64 (hypot.f64 c d) 2) (*.f64 c b)) -1)
(neg.f64 (/.f64 c (/.f64 (neg.f64 (pow.f64 (hypot.f64 c d) 2)) b)))
(sqrt.f64 (pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 2))
(log.f64 (exp.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))))
(cbrt.f64 (pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 3))
(expm1.f64 (log1p.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))
(exp.f64 (log.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))
(log1p.f64 (expm1.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))
Outputs
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 c (/.f64 (*.f64 d d) b))
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 b (/.f64 d (/.f64 c d)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b)))
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b))
(*.f64 b (-.f64 (/.f64 c (*.f64 d d)) (/.f64 (pow.f64 c 3) (pow.f64 d 4))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 6) b)))
(+.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (-.f64 (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)))
(fma.f64 (/.f64 b d) (/.f64 c d) (*.f64 b (-.f64 (/.f64 (pow.f64 c 5) (pow.f64 d 6)) (/.f64 (pow.f64 c 3) (pow.f64 d 4)))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(+.f64 (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 6) b)) (fma.f64 -1 (/.f64 (pow.f64 c 7) (/.f64 (pow.f64 d 8) b)) (fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b)))))
(+.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)) (-.f64 (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))) (*.f64 (/.f64 (pow.f64 c 7) (pow.f64 d 8)) b)))
(+.f64 (*.f64 b (-.f64 (/.f64 c (*.f64 d d)) (/.f64 (pow.f64 c 3) (pow.f64 d 4)))) (*.f64 b (-.f64 (/.f64 (pow.f64 c 5) (pow.f64 d 6)) (/.f64 (pow.f64 c 7) (pow.f64 d 8)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))
(fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c))
(-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b))
(-.f64 (/.f64 b c) (*.f64 (/.f64 b (pow.f64 c 3)) (*.f64 d d)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c)) (/.f64 (*.f64 b (pow.f64 d 4)) (pow.f64 c 5)))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (/.f64 b (/.f64 (pow.f64 c 5) (pow.f64 d 4))))
(fma.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) b (-.f64 (/.f64 b c) (*.f64 (/.f64 b (pow.f64 c 3)) (*.f64 d d))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (+.f64 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 7))))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c)) (+.f64 (/.f64 (*.f64 b (pow.f64 d 4)) (pow.f64 c 5)) (neg.f64 (/.f64 (pow.f64 d 6) (/.f64 (pow.f64 c 7) b)))))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (-.f64 (/.f64 b (/.f64 (pow.f64 c 5) (pow.f64 d 4))) (*.f64 (/.f64 (pow.f64 d 6) (pow.f64 c 7)) b)))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 b (pow.f64 c 3)) (*.f64 d d))) (*.f64 b (-.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) (/.f64 (pow.f64 d 6) (pow.f64 c 7)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))
(fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c))
(-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b))
(-.f64 (/.f64 b c) (*.f64 (/.f64 b (pow.f64 c 3)) (*.f64 d d)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c)) (/.f64 (*.f64 b (pow.f64 d 4)) (pow.f64 c 5)))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (/.f64 b (/.f64 (pow.f64 c 5) (pow.f64 d 4))))
(fma.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) b (-.f64 (/.f64 b c) (*.f64 (/.f64 b (pow.f64 c 3)) (*.f64 d d))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (+.f64 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 7))))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c)) (+.f64 (/.f64 (*.f64 b (pow.f64 d 4)) (pow.f64 c 5)) (neg.f64 (/.f64 (pow.f64 d 6) (/.f64 (pow.f64 c 7) b)))))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (-.f64 (/.f64 b (/.f64 (pow.f64 c 5) (pow.f64 d 4))) (*.f64 (/.f64 (pow.f64 d 6) (pow.f64 c 7)) b)))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 b (pow.f64 c 3)) (*.f64 d d))) (*.f64 b (-.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) (/.f64 (pow.f64 d 6) (pow.f64 c 7)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(*.f64 b (/.f64 c (fma.f64 c c (*.f64 d d))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(*.f64 b (/.f64 c (fma.f64 c c (*.f64 d d))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(*.f64 b (/.f64 c (fma.f64 c c (*.f64 d d))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(*.f64 b (/.f64 c (fma.f64 c c (*.f64 d d))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(*.f64 b (/.f64 c (fma.f64 c c (*.f64 d d))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(*.f64 b (/.f64 c (fma.f64 c c (*.f64 d d))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(*.f64 b (/.f64 c (fma.f64 c c (*.f64 d d))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(*.f64 b (/.f64 c (fma.f64 c c (*.f64 d d))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(*.f64 b (/.f64 c (fma.f64 c c (*.f64 d d))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(*.f64 b (/.f64 c (fma.f64 c c (*.f64 d d))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(*.f64 b (/.f64 c (fma.f64 c c (*.f64 d d))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(*.f64 b (/.f64 c (fma.f64 c c (*.f64 d d))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))
(fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c))
(-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b))
(-.f64 (/.f64 b c) (*.f64 (/.f64 b (pow.f64 c 3)) (*.f64 d d)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c)) (/.f64 (*.f64 b (pow.f64 d 4)) (pow.f64 c 5)))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (/.f64 b (/.f64 (pow.f64 c 5) (pow.f64 d 4))))
(fma.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) b (-.f64 (/.f64 b c) (*.f64 (/.f64 b (pow.f64 c 3)) (*.f64 d d))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (+.f64 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 7))))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c)) (+.f64 (/.f64 (*.f64 b (pow.f64 d 4)) (pow.f64 c 5)) (neg.f64 (/.f64 (pow.f64 d 6) (/.f64 (pow.f64 c 7) b)))))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (-.f64 (/.f64 b (/.f64 (pow.f64 c 5) (pow.f64 d 4))) (*.f64 (/.f64 (pow.f64 d 6) (pow.f64 c 7)) b)))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 b (pow.f64 c 3)) (*.f64 d d))) (*.f64 b (-.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) (/.f64 (pow.f64 d 6) (pow.f64 c 7)))))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 c (/.f64 (*.f64 d d) b))
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 b (/.f64 d (/.f64 c d)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b)))
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b))
(*.f64 b (-.f64 (/.f64 c (*.f64 d d)) (/.f64 (pow.f64 c 3) (pow.f64 d 4))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 6) b)))
(+.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (-.f64 (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)))
(fma.f64 (/.f64 b d) (/.f64 c d) (*.f64 b (-.f64 (/.f64 (pow.f64 c 5) (pow.f64 d 6)) (/.f64 (pow.f64 c 3) (pow.f64 d 4)))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(+.f64 (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 6) b)) (fma.f64 -1 (/.f64 (pow.f64 c 7) (/.f64 (pow.f64 d 8) b)) (fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b)))))
(+.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)) (-.f64 (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))) (*.f64 (/.f64 (pow.f64 c 7) (pow.f64 d 8)) b)))
(+.f64 (*.f64 b (-.f64 (/.f64 c (*.f64 d d)) (/.f64 (pow.f64 c 3) (pow.f64 d 4)))) (*.f64 b (-.f64 (/.f64 (pow.f64 c 5) (pow.f64 d 6)) (/.f64 (pow.f64 c 7) (pow.f64 d 8)))))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 c (/.f64 (*.f64 d d) b))
(*.f64 (/.f64 b d) (/.f64 c d))
(/.f64 b (/.f64 d (/.f64 c d)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b)))
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b))
(*.f64 b (-.f64 (/.f64 c (*.f64 d d)) (/.f64 (pow.f64 c 3) (pow.f64 d 4))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 6) b)))
(+.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (-.f64 (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)))
(fma.f64 (/.f64 b d) (/.f64 c d) (*.f64 b (-.f64 (/.f64 (pow.f64 c 5) (pow.f64 d 6)) (/.f64 (pow.f64 c 3) (pow.f64 d 4)))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(+.f64 (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 6) b)) (fma.f64 -1 (/.f64 (pow.f64 c 7) (/.f64 (pow.f64 d 8) b)) (fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b)))))
(+.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)) (-.f64 (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))) (*.f64 (/.f64 (pow.f64 c 7) (pow.f64 d 8)) b)))
(+.f64 (*.f64 b (-.f64 (/.f64 c (*.f64 d d)) (/.f64 (pow.f64 c 3) (pow.f64 d 4)))) (*.f64 b (-.f64 (/.f64 (pow.f64 c 5) (pow.f64 d 6)) (/.f64 (pow.f64 c 7) (pow.f64 d 8)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))) 1)
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (*.f64 c b) (/.f64 1 (pow.f64 (hypot.f64 c d) 2)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 1)
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 1 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (sqrt.f64 (*.f64 c b)) (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (hypot.f64 c d)) (/.f64 (sqrt.f64 (*.f64 c b)) (hypot.f64 c d)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (/.f64 (cbrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (cbrt.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))) (cbrt.f64 (pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 2)))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))) (cbrt.f64 (pow.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2))) 2)))
(*.f64 (cbrt.f64 (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))) (cbrt.f64 (pow.f64 (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c)) 2)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (hypot.f64 c d)) 4)))
(*.f64 (cbrt.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2) (cbrt.f64 (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c)))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (pow.f64 (cbrt.f64 (*.f64 c b)) 2))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 2)) (cbrt.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))) (cbrt.f64 (pow.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2))) 2)))
(*.f64 (cbrt.f64 (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))) (cbrt.f64 (pow.f64 (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c)) 2)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (hypot.f64 c d)) 4)))
(*.f64 (-.f64 (*.f64 d d) (*.f64 c c)) (/.f64 (*.f64 c b) (-.f64 (pow.f64 d 4) (pow.f64 c 4))))
(*.f64 (-.f64 (*.f64 d d) (*.f64 c c)) (*.f64 (/.f64 c (-.f64 (pow.f64 d 4) (pow.f64 c 4))) b))
(*.f64 (/.f64 (*.f64 c (*.f64 (+.f64 c d) (-.f64 d c))) (-.f64 (pow.f64 d 4) (pow.f64 c 4))) b)
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 2)) (*.f64 c b))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (pow.f64 (*.f64 c d) 2))) (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 6) (pow.f64 c 6))))
(/.f64 (*.f64 (*.f64 c b) (-.f64 (+.f64 (pow.f64 d 4) (pow.f64 c 4)) (pow.f64 (*.f64 c d) 2))) (+.f64 (pow.f64 d 6) (pow.f64 c 6)))
(*.f64 (+.f64 (pow.f64 d 4) (-.f64 (pow.f64 c 4) (pow.f64 (*.f64 c d) 2))) (*.f64 b (/.f64 c (+.f64 (pow.f64 d 6) (pow.f64 c 6)))))
(*.f64 (*.f64 c (neg.f64 b)) (/.f64 -1 (pow.f64 (hypot.f64 c d) 2)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)) (sqrt.f64 (*.f64 c b)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (sqrt.f64 (*.f64 c b)) 1))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)) (pow.f64 (cbrt.f64 (*.f64 c b)) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) 1))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 c (/.f64 (hypot.f64 c d) b)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 (*.f64 c b) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(/.f64 (*.f64 (/.f64 c (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) b)) 1) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))
(*.f64 (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) (/.f64 1 (hypot.f64 c d)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) c)
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 c d) 2)) (/.f64 c 1))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 b (hypot.f64 c d)) (/.f64 c (hypot.f64 c d)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(/.f64 (*.f64 (/.f64 c (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) b)) 1) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))
(*.f64 (/.f64 (*.f64 c b) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(/.f64 (*.f64 (/.f64 c (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) b)) 1) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))
(*.f64 (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b)
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) (/.f64 b 1))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (*.f64 c b) (-.f64 (pow.f64 d 4) (pow.f64 c 4))) (-.f64 (*.f64 d d) (*.f64 c c)))
(*.f64 (-.f64 (*.f64 d d) (*.f64 c c)) (/.f64 (*.f64 c b) (-.f64 (pow.f64 d 4) (pow.f64 c 4))))
(*.f64 (-.f64 (*.f64 d d) (*.f64 c c)) (*.f64 (/.f64 c (-.f64 (pow.f64 d 4) (pow.f64 c 4))) b))
(*.f64 (/.f64 (*.f64 c (*.f64 (+.f64 c d) (-.f64 d c))) (-.f64 (pow.f64 d 4) (pow.f64 c 4))) b)
(*.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 6) (pow.f64 c 6))) (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (pow.f64 (*.f64 c d) 2))))
(*.f64 (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (pow.f64 (*.f64 c d) 2))) (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 6) (pow.f64 c 6))))
(/.f64 (*.f64 (*.f64 c b) (-.f64 (+.f64 (pow.f64 d 4) (pow.f64 c 4)) (pow.f64 (*.f64 c d) 2))) (+.f64 (pow.f64 d 6) (pow.f64 c 6)))
(*.f64 (+.f64 (pow.f64 d 4) (-.f64 (pow.f64 c 4) (pow.f64 (*.f64 c d) 2))) (*.f64 b (/.f64 c (+.f64 (pow.f64 d 6) (pow.f64 c 6)))))
(*.f64 (/.f64 -1 (pow.f64 (hypot.f64 c d) 2)) (*.f64 c (neg.f64 b)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 c 1) (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 c (hypot.f64 c d)) (/.f64 b (hypot.f64 c d)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(/.f64 (*.f64 (/.f64 c (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) b)) 1) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))
(*.f64 (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (/.f64 b 1) (/.f64 c (pow.f64 (hypot.f64 c d) 2)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 b (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 c (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(/.f64 (*.f64 (/.f64 c (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) b)) 1) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))
(*.f64 (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (/.f64 c (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 b (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(/.f64 (*.f64 (/.f64 c (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) b)) 1) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))
(*.f64 (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 c b)) 1) (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (/.f64 (sqrt.f64 (*.f64 c b)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))))
(/.f64 (*.f64 (/.f64 c (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) b)) 1) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))
(*.f64 (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 (sqrt.f64 (*.f64 c b)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(/.f64 (*.f64 (/.f64 c (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) b)) 1) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2))
(*.f64 (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 c d) 2))) (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) 1) (/.f64 (cbrt.f64 (*.f64 c b)) (pow.f64 (hypot.f64 c d) 2)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (hypot.f64 c d)) (/.f64 (cbrt.f64 (*.f64 c b)) (hypot.f64 c d)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c b)) (hypot.f64 c d)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (hypot.f64 c d)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (cbrt.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 c b)) 2) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2) (cbrt.f64 (/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c)))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 c d) 2)) 2)) (pow.f64 (cbrt.f64 (*.f64 c b)) 2))
(pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 1)
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 c b)) (hypot.f64 c d)) 2)
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(pow.f64 (cbrt.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))) 3)
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(pow.f64 (pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 3) 1/3)
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(pow.f64 (/.f64 (pow.f64 (hypot.f64 c d) 2) (*.f64 c b)) -1)
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(neg.f64 (/.f64 c (/.f64 (neg.f64 (pow.f64 (hypot.f64 c d) 2)) b)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(sqrt.f64 (pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(log.f64 (exp.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))))))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(cbrt.f64 (pow.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2))) 3))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(expm1.f64 (log1p.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(exp.f64 (log.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))
(log1p.f64 (expm1.f64 (*.f64 b (/.f64 c (pow.f64 (hypot.f64 c d) 2)))))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 c d) 2)))
(/.f64 b (/.f64 (pow.f64 (hypot.f64 c d) 2) c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2))

localize10.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
88.6%
(/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))
86.6%
(/.f64 (fma.f64 d d (*.f64 c c)) b)
Compiler

Compiled 34 to 8 computations (76.5% saved)

series7.0ms (0.1%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
2.0ms
b
@0
(/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))
0.0ms
d
@0
(/.f64 (fma.f64 d d (*.f64 c c)) b)
0.0ms
d
@inf
(/.f64 (fma.f64 d d (*.f64 c c)) b)
0.0ms
d
@-inf
(/.f64 (fma.f64 d d (*.f64 c c)) b)
0.0ms
b
@0
(/.f64 (fma.f64 d d (*.f64 c c)) b)

rewrite165.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1516×associate-/l*
1406×associate-*r/
1062×*-commutative
958×associate-*l/
486×associate-/r/
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01048
121044
2286844
Stop Event
node limit
Counts
2 → 141
Calls
Call 1
Inputs
(/.f64 (fma.f64 d d (*.f64 c c)) b)
(/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))
Outputs
(((+.f64 (*.f64 (/.f64 1 b) (*.f64 c c)) (*.f64 (/.f64 1 b) (*.f64 d d))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b) (*.f64 d d)) (*.f64 (/.f64 1 b) (*.f64 c c))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 c c) (/.f64 1 b)) (*.f64 (*.f64 d d) (/.f64 1 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 d d) (/.f64 1 b)) (*.f64 (*.f64 c c) (/.f64 1 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (pow.f64 (hypot.f64 d c) 2) b))) 1) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d c) 2) (/.f64 1 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2) b) 1) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d c) 2) b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) (sqrt.f64 b)) (/.f64 (hypot.f64 d c) (sqrt.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d c) (/.f64 (hypot.f64 d c) b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (pow.f64 (hypot.f64 d c) 2) b)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (pow.f64 (hypot.f64 d c) 2) b)) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (pow.f64 (cbrt.f64 b) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (pow.f64 (hypot.f64 d c) 2) b)) 2) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d c) 2)) 2) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) (pow.f64 (hypot.f64 d c) 2)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (hypot.f64 d c) 2)) (/.f64 1 (neg.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) b) (hypot.f64 d c)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) b) (/.f64 (hypot.f64 d c) 1)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2)) b) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2)) b) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) 1)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2) 1) (/.f64 1 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2) (sqrt.f64 b)) (/.f64 1 (sqrt.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b)) (/.f64 (pow.f64 (hypot.f64 d c) 2) (sqrt.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) 2)) (/.f64 (pow.f64 (hypot.f64 d c) 2) (cbrt.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2) (cbrt.f64 b)) (/.f64 1 (pow.f64 (cbrt.f64 b) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b)) (neg.f64 (pow.f64 (hypot.f64 d c) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 1) (/.f64 (hypot.f64 d c) b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) (pow.f64 (cbrt.f64 b) 2)) (/.f64 (hypot.f64 d c) (cbrt.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) (cbrt.f64 b)) (/.f64 (hypot.f64 d c) (pow.f64 (cbrt.f64 b) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2)) 2) 1) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2)) 2) (sqrt.f64 b)) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) (sqrt.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2)) (sqrt.f64 b)) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (sqrt.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2)) 2) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (pow.f64 (hypot.f64 d c) 2) b)) 2) 1) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2)) 2) b) (cbrt.f64 (pow.f64 (hypot.f64 d c) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2))) (cbrt.f64 (pow.f64 (hypot.f64 d c) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d c) 2) b) 1) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d c) (sqrt.f64 b)) 2) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (pow.f64 (hypot.f64 d c) 2) b)) 3) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (pow.f64 (hypot.f64 d c) 2) b) 3) 1/3) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (pow.f64 (hypot.f64 d c) 2)) -1) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (pow.f64 (hypot.f64 d c) 2) (neg.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (pow.f64 (hypot.f64 d c) 2) b) 2)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (pow.f64 (hypot.f64 d c) 2) b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (pow.f64 (hypot.f64 d c) 2) b)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (pow.f64 (hypot.f64 d c) 2) b) 3)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (pow.f64 (hypot.f64 d c) 2) 3) (pow.f64 b 3))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (pow.f64 (hypot.f64 d c) 2) b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (pow.f64 (hypot.f64 d c) 2) b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (pow.f64 (hypot.f64 d c) 2) b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))) 1) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 b (/.f64 c (pow.f64 (hypot.f64 d c) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 1) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b) (*.f64 (sqrt.f64 b) (/.f64 c (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c) (*.f64 (sqrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c) (hypot.f64 d c)) (sqrt.f64 b)) (*.f64 (/.f64 (sqrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b) (*.f64 (pow.f64 (cbrt.f64 b) 2) (/.f64 c (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c c)) (*.f64 (cbrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) (pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) 2)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) (/.f64 (cbrt.f64 (*.f64 c c)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) 2) (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) b) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) c) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (/.f64 c 1)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b) (/.f64 c (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c) (*.f64 -1 (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) (/.f64 c (pow.f64 (hypot.f64 d c) 2))) (sqrt.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) 2) (/.f64 c (pow.f64 (hypot.f64 d c) 2))) (cbrt.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (sqrt.f64 c)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (/.f64 (sqrt.f64 c) 1)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (cbrt.f64 (*.f64 c c))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (/.f64 (cbrt.f64 (*.f64 c c)) 1)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c 1) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (hypot.f64 d c)) (/.f64 b (hypot.f64 d c))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2)) (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 c (hypot.f64 d c)) (sqrt.f64 b)) (/.f64 (sqrt.f64 b) (hypot.f64 d c))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2)) (*.f64 c b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2)) (*.f64 (/.f64 c 1) b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) (hypot.f64 d c)) (*.f64 (/.f64 c (hypot.f64 d c)) (sqrt.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (/.f64 c (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 c 1) b) (/.f64 1 (pow.f64 (hypot.f64 d c) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (neg.f64 (pow.f64 (hypot.f64 d c) 2))) (neg.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (pow.f64 (hypot.f64 d c) 2))) (*.f64 c (neg.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (pow.f64 (hypot.f64 d c) 2))) (neg.f64 c)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) 1) (*.f64 (sqrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (pow.f64 (hypot.f64 d c) 2)) (/.f64 (sqrt.f64 c) (/.f64 1 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c c)) 1) (*.f64 (cbrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (/.f64 1 b)) (/.f64 (sqrt.f64 c) (pow.f64 (hypot.f64 d c) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (/.f64 (sqrt.f64 c) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))) (/.f64 (sqrt.f64 c) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c c)) (pow.f64 (hypot.f64 d c) 2)) (/.f64 (cbrt.f64 c) (/.f64 1 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (/.f64 1 b)) (/.f64 (cbrt.f64 (*.f64 c c)) (pow.f64 (hypot.f64 d c) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (hypot.f64 d c)) (sqrt.f64 b)) (*.f64 (/.f64 (cbrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 (cbrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b)) (*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (hypot.f64 d c)) (sqrt.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c c)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c c)) (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) (cbrt.f64 c)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (/.f64 (pow.f64 (hypot.f64 d c) 2) (sqrt.f64 b))) (sqrt.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c -1) (neg.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (/.f64 (pow.f64 (hypot.f64 d c) 2) (pow.f64 (cbrt.f64 b) 2))) (cbrt.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (neg.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (neg.f64 (neg.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d c) 2) (*.f64 (cbrt.f64 (*.f64 c c)) b))) (cbrt.f64 c)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) 1) b) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) 1) (/.f64 b 1)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) (/.f64 1 (sqrt.f64 b))) (sqrt.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) (/.f64 1 (pow.f64 (cbrt.f64 b) 2))) (cbrt.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) -1) (neg.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) -1) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (neg.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (neg.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 c b) (-.f64 (*.f64 (*.f64 d d) (*.f64 d d)) (pow.f64 c 4))) (-.f64 (*.f64 d d) (*.f64 c c))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 (*.f64 c c) 3) (pow.f64 (*.f64 d d) 3))) (-.f64 (+.f64 (*.f64 (*.f64 d d) (*.f64 d d)) (pow.f64 c 4)) (*.f64 (*.f64 c c) (*.f64 d d)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) 1) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (hypot.f64 d c)) (/.f64 b (hypot.f64 d c))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2)) (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (neg.f64 (pow.f64 (hypot.f64 d c) 2))) (neg.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (/.f64 (pow.f64 (hypot.f64 d c) 2) 1)) b) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (/.f64 (pow.f64 (hypot.f64 d c) 2) (sqrt.f64 b))) (sqrt.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (/.f64 (pow.f64 (hypot.f64 d c) 2) (pow.f64 (cbrt.f64 b) 2))) (cbrt.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) -1) (neg.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (neg.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (neg.f64 (neg.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (hypot.f64 d c)) (sqrt.f64 b)) 1) (sqrt.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (hypot.f64 d c)) (sqrt.f64 b)) (sqrt.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (sqrt.f64 (neg.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) 1) (cbrt.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 (pow.f64 (hypot.f64 d c) 2))) (cbrt.f64 b)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (cbrt.f64 (neg.f64 b))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 1) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (sqrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b)) 2) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) 3) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 3) 1/3) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d c) 2) (*.f64 c b)) -1) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (neg.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 2)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 3)) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))) #(struct:egraph-query ((/.f64 (fma.f64 d d (*.f64 c c)) b) (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify120.0ms (0.9%)

Algorithm
egg-herbie
Rules
924×distribute-rgt-in
918×distribute-lft-in
634×distribute-lft-neg-in
574×distribute-rgt-neg-in
500×associate-*r*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03576985
110476677
242046383
Stop Event
node limit
Counts
213 → 216
Calls
Call 1
Inputs
(/.f64 (pow.f64 c 2) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(/.f64 (pow.f64 d 2) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(/.f64 (pow.f64 d 2) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(/.f64 (pow.f64 d 2) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(/.f64 (pow.f64 c 2) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(/.f64 (pow.f64 c 2) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (+.f64 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 7))))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (+.f64 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 7))))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (+.f64 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 7))))))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (*.f64 (/.f64 1 b) (*.f64 c c)) (*.f64 (/.f64 1 b) (*.f64 d d)))
(+.f64 (*.f64 (/.f64 1 b) (*.f64 d d)) (*.f64 (/.f64 1 b) (*.f64 c c)))
(+.f64 (*.f64 (*.f64 c c) (/.f64 1 b)) (*.f64 (*.f64 d d) (/.f64 1 b)))
(+.f64 (*.f64 (*.f64 d d) (/.f64 1 b)) (*.f64 (*.f64 c c) (/.f64 1 b)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))) 1)
(*.f64 (pow.f64 (hypot.f64 d c) 2) (/.f64 1 b))
(*.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b) 1)
(*.f64 1 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))
(*.f64 (/.f64 (hypot.f64 d c) (sqrt.f64 b)) (/.f64 (hypot.f64 d c) (sqrt.f64 b)))
(*.f64 (hypot.f64 d c) (/.f64 (hypot.f64 d c) b))
(*.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2))
(*.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (pow.f64 (cbrt.f64 b) 2)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) b))
(*.f64 (/.f64 1 b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)) (/.f64 1 (neg.f64 b)))
(*.f64 (/.f64 (hypot.f64 d c) b) (hypot.f64 d c))
(*.f64 (/.f64 (hypot.f64 d c) b) (/.f64 (hypot.f64 d c) 1))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) b) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) b) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) 1))
(*.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) 1) (/.f64 1 b))
(*.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) (sqrt.f64 b)) (/.f64 1 (sqrt.f64 b)))
(*.f64 (/.f64 1 (sqrt.f64 b)) (/.f64 (pow.f64 (hypot.f64 d c) 2) (sqrt.f64 b)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 b) 2)) (/.f64 (pow.f64 (hypot.f64 d c) 2) (cbrt.f64 b)))
(*.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) (cbrt.f64 b)) (/.f64 1 (pow.f64 (cbrt.f64 b) 2)))
(*.f64 -1 (neg.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (/.f64 1 (neg.f64 b)) (neg.f64 (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (hypot.f64 d c) 1) (/.f64 (hypot.f64 d c) b))
(*.f64 (/.f64 (hypot.f64 d c) (pow.f64 (cbrt.f64 b) 2)) (/.f64 (hypot.f64 d c) (cbrt.f64 b)))
(*.f64 (/.f64 (hypot.f64 d c) (cbrt.f64 b)) (/.f64 (hypot.f64 d c) (pow.f64 (cbrt.f64 b) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) 1) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) b))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (sqrt.f64 b)) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) (sqrt.f64 b)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) (sqrt.f64 b)) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (sqrt.f64 b)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2) 1) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) b) (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 1 (/.f64 b (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2))) (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)))
(pow.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b) 1)
(pow.f64 (/.f64 (hypot.f64 d c) (sqrt.f64 b)) 2)
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 3)
(pow.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b) 3) 1/3)
(pow.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) -1)
(neg.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) (neg.f64 b)))
(sqrt.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b) 2))
(log.f64 (exp.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))))
(cbrt.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b) 3))
(cbrt.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 d c) 2) 3) (pow.f64 b 3)))
(expm1.f64 (log1p.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(exp.f64 (log.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(log1p.f64 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))) 1)
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 b (/.f64 c (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 1)
(*.f64 1 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (/.f64 c (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (*.f64 (/.f64 (sqrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b)) (*.f64 (/.f64 (sqrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b)))
(*.f64 (cbrt.f64 b) (*.f64 (pow.f64 (cbrt.f64 b) 2) (/.f64 c (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (cbrt.f64 (*.f64 c c)) (*.f64 (cbrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) (pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) 2))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) (/.f64 (cbrt.f64 (*.f64 c c)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) 2) (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))))
(*.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) b)
(*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) c)
(*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (/.f64 c 1))
(*.f64 (neg.f64 b) (/.f64 c (neg.f64 (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (neg.f64 c) (*.f64 -1 (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (*.f64 (sqrt.f64 b) (/.f64 c (pow.f64 (hypot.f64 d c) 2))) (sqrt.f64 b))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 b) 2) (/.f64 c (pow.f64 (hypot.f64 d c) 2))) (cbrt.f64 b))
(*.f64 (*.f64 (sqrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (sqrt.f64 c))
(*.f64 (*.f64 (sqrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (/.f64 (sqrt.f64 c) 1))
(*.f64 (*.f64 (cbrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (cbrt.f64 (*.f64 c c)))
(*.f64 (*.f64 (cbrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (/.f64 (cbrt.f64 (*.f64 c c)) 1))
(*.f64 (/.f64 c 1) (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 c (hypot.f64 d c)) (/.f64 b (hypot.f64 d c)))
(*.f64 (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2)) (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (*.f64 (/.f64 c (hypot.f64 d c)) (sqrt.f64 b)) (/.f64 (sqrt.f64 b) (hypot.f64 d c)))
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 d c) 2)) (*.f64 c b))
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 d c) 2)) (*.f64 (/.f64 c 1) b))
(*.f64 (/.f64 (sqrt.f64 b) (hypot.f64 d c)) (*.f64 (/.f64 c (hypot.f64 d c)) (sqrt.f64 b)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (/.f64 c (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))))
(*.f64 (*.f64 (/.f64 c 1) b) (/.f64 1 (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 c (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)))
(*.f64 (/.f64 c (neg.f64 (pow.f64 (hypot.f64 d c) 2))) (neg.f64 b))
(*.f64 (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 d c) 2))) (*.f64 c (neg.f64 b)))
(*.f64 (*.f64 -1 (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (neg.f64 c))
(*.f64 (/.f64 (sqrt.f64 c) 1) (*.f64 (sqrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (/.f64 (sqrt.f64 c) (pow.f64 (hypot.f64 d c) 2)) (/.f64 (sqrt.f64 c) (/.f64 1 b)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) 1) (*.f64 (cbrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (/.f64 (sqrt.f64 c) (/.f64 1 b)) (/.f64 (sqrt.f64 c) (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (sqrt.f64 c) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (/.f64 (sqrt.f64 c) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))))
(*.f64 (/.f64 (sqrt.f64 c) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))) (/.f64 (sqrt.f64 c) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (pow.f64 (hypot.f64 d c) 2)) (/.f64 (cbrt.f64 c) (/.f64 1 b)))
(*.f64 (/.f64 (cbrt.f64 c) (/.f64 1 b)) (/.f64 (cbrt.f64 (*.f64 c c)) (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (hypot.f64 d c)) (sqrt.f64 b)) (*.f64 (/.f64 (cbrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b)))
(*.f64 (*.f64 (/.f64 (cbrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b)) (*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (hypot.f64 d c)) (sqrt.f64 b)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) (cbrt.f64 c))
(*.f64 (/.f64 c (/.f64 (pow.f64 (hypot.f64 d c) 2) (sqrt.f64 b))) (sqrt.f64 b))
(*.f64 (/.f64 c -1) (neg.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (/.f64 c (/.f64 (pow.f64 (hypot.f64 d c) 2) (pow.f64 (cbrt.f64 b) 2))) (cbrt.f64 b))
(*.f64 (/.f64 c (neg.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (neg.f64 (neg.f64 b)))
(*.f64 (/.f64 1 (/.f64 (pow.f64 (hypot.f64 d c) 2) (*.f64 (cbrt.f64 (*.f64 c c)) b))) (cbrt.f64 c))
(*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) 1) b)
(*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) 1) (/.f64 b 1))
(*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) (/.f64 1 (sqrt.f64 b))) (sqrt.f64 b))
(*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) (/.f64 1 (pow.f64 (cbrt.f64 b) 2))) (cbrt.f64 b))
(*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) -1) (neg.f64 b))
(*.f64 (/.f64 (neg.f64 c) -1) (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (neg.f64 c) (neg.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (neg.f64 b))
(*.f64 (/.f64 (*.f64 c b) (-.f64 (*.f64 (*.f64 d d) (*.f64 d d)) (pow.f64 c 4))) (-.f64 (*.f64 d d) (*.f64 c c)))
(*.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 (*.f64 c c) 3) (pow.f64 (*.f64 d d) 3))) (-.f64 (+.f64 (*.f64 (*.f64 d d) (*.f64 d d)) (pow.f64 c 4)) (*.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 (/.f64 c 1) 1) (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c 1) (hypot.f64 d c)) (/.f64 b (hypot.f64 d c)))
(*.f64 (/.f64 (/.f64 c 1) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2)) (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (/.f64 (/.f64 c 1) (neg.f64 (pow.f64 (hypot.f64 d c) 2))) (neg.f64 b))
(*.f64 (/.f64 (/.f64 c 1) (/.f64 (pow.f64 (hypot.f64 d c) 2) 1)) b)
(*.f64 (/.f64 (/.f64 c 1) (/.f64 (pow.f64 (hypot.f64 d c) 2) (sqrt.f64 b))) (sqrt.f64 b))
(*.f64 (/.f64 (/.f64 c 1) (/.f64 (pow.f64 (hypot.f64 d c) 2) (pow.f64 (cbrt.f64 b) 2))) (cbrt.f64 b))
(*.f64 (/.f64 (/.f64 c 1) -1) (neg.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (/.f64 (/.f64 c 1) (neg.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (neg.f64 (neg.f64 b)))
(*.f64 (/.f64 (*.f64 (/.f64 c (hypot.f64 d c)) (sqrt.f64 b)) 1) (sqrt.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (/.f64 (*.f64 (/.f64 c (hypot.f64 d c)) (sqrt.f64 b)) (sqrt.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (sqrt.f64 (neg.f64 b)))
(*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) 1) (cbrt.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 (pow.f64 (hypot.f64 d c) 2))) (cbrt.f64 b))
(*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (cbrt.f64 (neg.f64 b)))
(pow.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 1)
(pow.f64 (*.f64 (/.f64 (sqrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b)) 2)
(pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) 3)
(pow.f64 (pow.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 3) 1/3)
(pow.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) (*.f64 c b)) -1)
(neg.f64 (/.f64 c (neg.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))))
(sqrt.f64 (pow.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 2))
(log.f64 (pow.f64 (exp.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))))
(cbrt.f64 (pow.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 3))
(expm1.f64 (log1p.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))))
(exp.f64 (log.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))))
(log1p.f64 (expm1.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))))
Outputs
(/.f64 (pow.f64 c 2) b)
(/.f64 (*.f64 c c) b)
(*.f64 c (/.f64 c b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (*.f64 d d) b)
(/.f64 d (/.f64 b d))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (*.f64 d d) b)
(/.f64 d (/.f64 b d))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (*.f64 d d) b)
(/.f64 d (/.f64 b d))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (pow.f64 c 2) b)
(/.f64 (*.f64 c c) b)
(*.f64 c (/.f64 c b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (pow.f64 c 2) b)
(/.f64 (*.f64 c c) b)
(*.f64 c (/.f64 c b))
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (/.f64 (pow.f64 c 2) b) (/.f64 (pow.f64 d 2) b))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2)) b)
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 c (/.f64 (*.f64 d d) b))
(*.f64 (/.f64 b d) (/.f64 c d))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b)))
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b))
(*.f64 (/.f64 b d) (-.f64 (/.f64 c d) (/.f64 (pow.f64 c 3) (pow.f64 d 3))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 6) b)))
(+.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)) (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))))
(+.f64 (*.f64 (/.f64 b d) (-.f64 (/.f64 c d) (/.f64 (pow.f64 c 3) (pow.f64 d 3)))) (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(+.f64 (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 6) b)) (fma.f64 -1 (/.f64 (pow.f64 c 7) (/.f64 (pow.f64 d 8) b)) (fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b)))))
(+.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)) (-.f64 (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))) (*.f64 (/.f64 (pow.f64 c 7) (pow.f64 d 8)) b)))
(+.f64 (*.f64 (/.f64 b d) (-.f64 (/.f64 c d) (/.f64 (pow.f64 c 3) (pow.f64 d 3)))) (*.f64 b (-.f64 (/.f64 (pow.f64 c 5) (pow.f64 d 6)) (/.f64 (pow.f64 c 7) (pow.f64 d 8)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))
(fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c))
(-.f64 (/.f64 b c) (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)))
(-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c)) (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 5) b)))
(+.f64 (-.f64 (/.f64 b c) (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3))) (*.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) b))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (*.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (+.f64 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 7))))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c)) (+.f64 (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 5) b)) (neg.f64 (/.f64 (pow.f64 d 6) (/.f64 (pow.f64 c 7) b)))))
(+.f64 (-.f64 (/.f64 b c) (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3))) (-.f64 (*.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) b) (*.f64 (/.f64 (pow.f64 d 6) (pow.f64 c 7)) b)))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (*.f64 b (-.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) (/.f64 (pow.f64 d 6) (pow.f64 c 7)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))
(fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c))
(-.f64 (/.f64 b c) (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)))
(-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c)) (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 5) b)))
(+.f64 (-.f64 (/.f64 b c) (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3))) (*.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) b))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (*.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (+.f64 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 7))))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c)) (+.f64 (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 5) b)) (neg.f64 (/.f64 (pow.f64 d 6) (/.f64 (pow.f64 c 7) b)))))
(+.f64 (-.f64 (/.f64 b c) (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3))) (-.f64 (*.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) b) (*.f64 (/.f64 (pow.f64 d 6) (pow.f64 c 7)) b)))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (*.f64 b (-.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) (/.f64 (pow.f64 d 6) (pow.f64 c 7)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (/.f64 b c))
(fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c))
(-.f64 (/.f64 b c) (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)))
(-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c)) (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 5) b)))
(+.f64 (-.f64 (/.f64 b c) (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3))) (*.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) b))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (*.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (/.f64 b c) (+.f64 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 7))))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3)) (/.f64 b c)) (+.f64 (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 5) b)) (neg.f64 (/.f64 (pow.f64 d 6) (/.f64 (pow.f64 c 7) b)))))
(+.f64 (-.f64 (/.f64 b c) (/.f64 (*.f64 b (*.f64 d d)) (pow.f64 c 3))) (-.f64 (*.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) b) (*.f64 (/.f64 (pow.f64 d 6) (pow.f64 c 7)) b)))
(+.f64 (-.f64 (/.f64 b c) (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 3)) b)) (*.f64 b (-.f64 (/.f64 (pow.f64 d 4) (pow.f64 c 5)) (/.f64 (pow.f64 d 6) (pow.f64 c 7)))))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 c (/.f64 (*.f64 d d) b))
(*.f64 (/.f64 b d) (/.f64 c d))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b)))
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b))
(*.f64 (/.f64 b d) (-.f64 (/.f64 c d) (/.f64 (pow.f64 c 3) (pow.f64 d 3))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 6) b)))
(+.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)) (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))))
(+.f64 (*.f64 (/.f64 b d) (-.f64 (/.f64 c d) (/.f64 (pow.f64 c 3) (pow.f64 d 3)))) (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(+.f64 (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 6) b)) (fma.f64 -1 (/.f64 (pow.f64 c 7) (/.f64 (pow.f64 d 8) b)) (fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b)))))
(+.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)) (-.f64 (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))) (*.f64 (/.f64 (pow.f64 c 7) (pow.f64 d 8)) b)))
(+.f64 (*.f64 (/.f64 b d) (-.f64 (/.f64 c d) (/.f64 (pow.f64 c 3) (pow.f64 d 3)))) (*.f64 b (-.f64 (/.f64 (pow.f64 c 5) (pow.f64 d 6)) (/.f64 (pow.f64 c 7) (pow.f64 d 8)))))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 c (/.f64 (*.f64 d d) b))
(*.f64 (/.f64 b d) (/.f64 c d))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b)))
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b))
(*.f64 (/.f64 b d) (-.f64 (/.f64 c d) (/.f64 (pow.f64 c 3) (pow.f64 d 3))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 6) b)))
(+.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)) (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))))
(+.f64 (*.f64 (/.f64 b d) (-.f64 (/.f64 c d) (/.f64 (pow.f64 c 3) (pow.f64 d 3)))) (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(+.f64 (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 6) b)) (fma.f64 -1 (/.f64 (pow.f64 c 7) (/.f64 (pow.f64 d 8) b)) (fma.f64 -1 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 c (/.f64 (*.f64 d d) b)))))
(+.f64 (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b)) (-.f64 (/.f64 b (/.f64 (pow.f64 d 6) (pow.f64 c 5))) (*.f64 (/.f64 (pow.f64 c 7) (pow.f64 d 8)) b)))
(+.f64 (*.f64 (/.f64 b d) (-.f64 (/.f64 c d) (/.f64 (pow.f64 c 3) (pow.f64 d 3)))) (*.f64 b (-.f64 (/.f64 (pow.f64 c 5) (pow.f64 d 6)) (/.f64 (pow.f64 c 7) (pow.f64 d 8)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 c b) (fma.f64 c c (*.f64 d d)))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 c b) (fma.f64 c c (*.f64 d d)))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 c b) (fma.f64 c c (*.f64 d d)))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 c b) (fma.f64 c c (*.f64 d d)))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 c b) (fma.f64 c c (*.f64 d d)))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 c b) (fma.f64 c c (*.f64 d d)))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 c b) (fma.f64 c c (*.f64 d d)))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 c b) (fma.f64 c c (*.f64 d d)))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 c b) (fma.f64 c c (*.f64 d d)))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 c b) (fma.f64 c c (*.f64 d d)))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 c b) (fma.f64 c c (*.f64 d d)))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 c b) (fma.f64 c c (*.f64 d d)))
(*.f64 (/.f64 c (fma.f64 c c (*.f64 d d))) b)
(+.f64 (*.f64 (/.f64 1 b) (*.f64 c c)) (*.f64 (/.f64 1 b) (*.f64 d d)))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (*.f64 (/.f64 1 b) (*.f64 d d)) (*.f64 (/.f64 1 b) (*.f64 c c)))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (*.f64 (*.f64 c c) (/.f64 1 b)) (*.f64 (*.f64 d d) (/.f64 1 b)))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(+.f64 (*.f64 (*.f64 d d) (/.f64 1 b)) (*.f64 (*.f64 c c) (/.f64 1 b)))
(+.f64 (/.f64 (*.f64 c c) b) (/.f64 (*.f64 d d) b))
(*.f64 (fma.f64 c c (*.f64 d d)) (/.f64 1 b))
(/.f64 (fma.f64 c c (*.f64 d d)) b)
(-.f64 (exp.f64 (log1p.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))) 1)
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (pow.f64 (hypot.f64 d c) 2) (/.f64 1 b))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b) 1)
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 1 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 (hypot.f64 d c) (sqrt.f64 b)) (/.f64 (hypot.f64 d c) (sqrt.f64 b)))
(pow.f64 (/.f64 (hypot.f64 d c) (sqrt.f64 b)) 2)
(*.f64 (hypot.f64 d c) (/.f64 (hypot.f64 d c) b))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (pow.f64 (cbrt.f64 b) 2)))
(/.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) (/.f64 (pow.f64 (cbrt.f64 b) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) b))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 1 b) (pow.f64 (hypot.f64 d c) 2))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)) (/.f64 1 (neg.f64 b)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 (hypot.f64 d c) b) (hypot.f64 d c))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 (hypot.f64 d c) b) (/.f64 (hypot.f64 d c) 1))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) b) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) b) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) 1))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) 1) (/.f64 1 b))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) (sqrt.f64 b)) (/.f64 1 (sqrt.f64 b)))
(pow.f64 (/.f64 (hypot.f64 d c) (sqrt.f64 b)) 2)
(*.f64 (/.f64 1 (sqrt.f64 b)) (/.f64 (pow.f64 (hypot.f64 d c) 2) (sqrt.f64 b)))
(pow.f64 (/.f64 (hypot.f64 d c) (sqrt.f64 b)) 2)
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 b) 2)) (/.f64 (pow.f64 (hypot.f64 d c) 2) (cbrt.f64 b)))
(/.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b))
(*.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) (cbrt.f64 b)) (/.f64 1 (pow.f64 (cbrt.f64 b) 2)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 b) 2)) (/.f64 (pow.f64 (hypot.f64 d c) 2) (cbrt.f64 b)))
(/.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b))
(*.f64 -1 (neg.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 1 (neg.f64 b)) (neg.f64 (pow.f64 (hypot.f64 d c) 2)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 (hypot.f64 d c) 1) (/.f64 (hypot.f64 d c) b))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 (hypot.f64 d c) (pow.f64 (cbrt.f64 b) 2)) (/.f64 (hypot.f64 d c) (cbrt.f64 b)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 b) 2)) (/.f64 (pow.f64 (hypot.f64 d c) 2) (cbrt.f64 b)))
(/.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b))
(*.f64 (/.f64 (hypot.f64 d c) (cbrt.f64 b)) (/.f64 (hypot.f64 d c) (pow.f64 (cbrt.f64 b) 2)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 b) 2)) (/.f64 (pow.f64 (hypot.f64 d c) 2) (cbrt.f64 b)))
(/.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) 1) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) b))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (sqrt.f64 b)) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) (sqrt.f64 b)))
(pow.f64 (/.f64 (hypot.f64 d c) (sqrt.f64 b)) 2)
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) (sqrt.f64 b)) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (sqrt.f64 b)))
(pow.f64 (/.f64 (hypot.f64 d c) (sqrt.f64 b)) 2)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) (pow.f64 (cbrt.f64 b) 2)))
(/.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) (/.f64 (pow.f64 (cbrt.f64 b) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2) 1) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2) b) (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(*.f64 (/.f64 1 (/.f64 b (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2))) (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(pow.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b) 1)
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(pow.f64 (/.f64 (hypot.f64 d c) (sqrt.f64 b)) 2)
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 3)
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(pow.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b) 3) 1/3)
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(pow.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) -1)
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(neg.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) (neg.f64 b)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(sqrt.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b) 2))
(fabs.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))
(log.f64 (exp.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(cbrt.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b) 3))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(cbrt.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 d c) 2) 3) (pow.f64 b 3)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(expm1.f64 (log1p.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(exp.f64 (log.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(log1p.f64 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(/.f64 (pow.f64 (hypot.f64 d c) 2) b)
(-.f64 (exp.f64 (log1p.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))) 1)
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 b (/.f64 c (pow.f64 (hypot.f64 d c) 2)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 1)
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 1 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (/.f64 c (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b)) (*.f64 (/.f64 (sqrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b)))
(pow.f64 (*.f64 (sqrt.f64 b) (/.f64 (sqrt.f64 c) (hypot.f64 d c))) 2)
(pow.f64 (/.f64 (sqrt.f64 c) (/.f64 (hypot.f64 d c) (sqrt.f64 b))) 2)
(*.f64 (cbrt.f64 b) (*.f64 (pow.f64 (cbrt.f64 b) 2) (/.f64 c (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (cbrt.f64 (*.f64 c c)) (*.f64 (cbrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (cbrt.f64 c) (*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (cbrt.f64 (*.f64 c c))))
(*.f64 (cbrt.f64 (*.f64 c c)) (/.f64 (cbrt.f64 c) (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (*.f64 (cbrt.f64 (*.f64 c c)) (cbrt.f64 c)))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) (pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) 2))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) (/.f64 (cbrt.f64 (*.f64 c c)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))) (/.f64 (cbrt.f64 (*.f64 c c)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)))
(/.f64 (cbrt.f64 (*.f64 c c)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2) (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) 2) (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) b)
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) c)
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (/.f64 c 1))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (neg.f64 b) (/.f64 c (neg.f64 (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (neg.f64 c) (*.f64 -1 (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (*.f64 (sqrt.f64 b) (/.f64 c (pow.f64 (hypot.f64 d c) 2))) (sqrt.f64 b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 b) 2) (/.f64 c (pow.f64 (hypot.f64 d c) 2))) (cbrt.f64 b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (*.f64 (sqrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (sqrt.f64 c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (*.f64 (sqrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (/.f64 (sqrt.f64 c) 1))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (*.f64 (cbrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (cbrt.f64 (*.f64 c c)))
(*.f64 (cbrt.f64 c) (*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (cbrt.f64 (*.f64 c c))))
(*.f64 (cbrt.f64 (*.f64 c c)) (/.f64 (cbrt.f64 c) (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (*.f64 (cbrt.f64 (*.f64 c c)) (cbrt.f64 c)))
(*.f64 (*.f64 (cbrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (/.f64 (cbrt.f64 (*.f64 c c)) 1))
(*.f64 (cbrt.f64 c) (*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (cbrt.f64 (*.f64 c c))))
(*.f64 (cbrt.f64 (*.f64 c c)) (/.f64 (cbrt.f64 c) (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (*.f64 (cbrt.f64 (*.f64 c c)) (cbrt.f64 c)))
(*.f64 (/.f64 c 1) (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 c (hypot.f64 d c)) (/.f64 b (hypot.f64 d c)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 c (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2)) (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (*.f64 (/.f64 c (hypot.f64 d c)) (sqrt.f64 b)) (/.f64 (sqrt.f64 b) (hypot.f64 d c)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 d c) 2)) (*.f64 c b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 d c) 2)) (*.f64 (/.f64 c 1) b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (sqrt.f64 b) (hypot.f64 d c)) (*.f64 (/.f64 c (hypot.f64 d c)) (sqrt.f64 b)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (/.f64 c (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (*.f64 (/.f64 c 1) b) (/.f64 1 (pow.f64 (hypot.f64 d c) 2)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 c (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 c (neg.f64 (pow.f64 (hypot.f64 d c) 2))) (neg.f64 b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 d c) 2))) (*.f64 c (neg.f64 b)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (*.f64 -1 (/.f64 b (pow.f64 (hypot.f64 d c) 2))) (neg.f64 c))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (sqrt.f64 c) 1) (*.f64 (sqrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (sqrt.f64 c) (pow.f64 (hypot.f64 d c) 2)) (/.f64 (sqrt.f64 c) (/.f64 1 b)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) 1) (*.f64 (cbrt.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (cbrt.f64 c) (*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (cbrt.f64 (*.f64 c c))))
(*.f64 (cbrt.f64 (*.f64 c c)) (/.f64 (cbrt.f64 c) (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (*.f64 (cbrt.f64 (*.f64 c c)) (cbrt.f64 c)))
(*.f64 (/.f64 (sqrt.f64 c) (/.f64 1 b)) (/.f64 (sqrt.f64 c) (pow.f64 (hypot.f64 d c) 2)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (sqrt.f64 c) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (/.f64 (sqrt.f64 c) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (sqrt.f64 c) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))) (/.f64 (sqrt.f64 c) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (pow.f64 (hypot.f64 d c) 2)) (/.f64 (cbrt.f64 c) (/.f64 1 b)))
(*.f64 (cbrt.f64 c) (*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (cbrt.f64 (*.f64 c c))))
(*.f64 (cbrt.f64 (*.f64 c c)) (/.f64 (cbrt.f64 c) (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (*.f64 (cbrt.f64 (*.f64 c c)) (cbrt.f64 c)))
(*.f64 (/.f64 (cbrt.f64 c) (/.f64 1 b)) (/.f64 (cbrt.f64 (*.f64 c c)) (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (cbrt.f64 c) (*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (cbrt.f64 (*.f64 c c))))
(*.f64 (cbrt.f64 (*.f64 c c)) (/.f64 (cbrt.f64 c) (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (*.f64 (cbrt.f64 (*.f64 c c)) (cbrt.f64 c)))
(*.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (hypot.f64 d c)) (sqrt.f64 b)) (*.f64 (/.f64 (cbrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (hypot.f64 d c)) (*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (/.f64 (cbrt.f64 c) (hypot.f64 d c)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (hypot.f64 d c)) (*.f64 b (/.f64 (cbrt.f64 c) (hypot.f64 d c))))
(*.f64 (*.f64 (/.f64 (cbrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b)) (*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (hypot.f64 d c)) (sqrt.f64 b)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (hypot.f64 d c)) (*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (/.f64 (cbrt.f64 c) (hypot.f64 d c)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (hypot.f64 d c)) (*.f64 b (/.f64 (cbrt.f64 c) (hypot.f64 d c))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))) (/.f64 (cbrt.f64 (*.f64 c c)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)))
(/.f64 (cbrt.f64 (*.f64 c c)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2) (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 c c)) (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) (cbrt.f64 c))
(*.f64 (cbrt.f64 c) (*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (cbrt.f64 (*.f64 c c))))
(*.f64 (cbrt.f64 (*.f64 c c)) (/.f64 (cbrt.f64 c) (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (*.f64 (cbrt.f64 (*.f64 c c)) (cbrt.f64 c)))
(*.f64 (/.f64 c (/.f64 (pow.f64 (hypot.f64 d c) 2) (sqrt.f64 b))) (sqrt.f64 b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 c -1) (neg.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 c (/.f64 (pow.f64 (hypot.f64 d c) 2) (pow.f64 (cbrt.f64 b) 2))) (cbrt.f64 b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 c (neg.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (neg.f64 (neg.f64 b)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 1 (/.f64 (pow.f64 (hypot.f64 d c) 2) (*.f64 (cbrt.f64 (*.f64 c c)) b))) (cbrt.f64 c))
(*.f64 (cbrt.f64 c) (*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (cbrt.f64 (*.f64 c c))))
(*.f64 (cbrt.f64 (*.f64 c c)) (/.f64 (cbrt.f64 c) (/.f64 (pow.f64 (hypot.f64 d c) 2) b)))
(*.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)) (*.f64 (cbrt.f64 (*.f64 c c)) (cbrt.f64 c)))
(*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) 1) b)
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) 1) (/.f64 b 1))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) (/.f64 1 (sqrt.f64 b))) (sqrt.f64 b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) (/.f64 1 (pow.f64 (cbrt.f64 b) 2))) (cbrt.f64 b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c (pow.f64 (hypot.f64 d c) 2)) -1) (neg.f64 b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (neg.f64 c) -1) (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (neg.f64 c) (neg.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (neg.f64 b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (*.f64 c b) (-.f64 (*.f64 (*.f64 d d) (*.f64 d d)) (pow.f64 c 4))) (-.f64 (*.f64 d d) (*.f64 c c)))
(*.f64 (/.f64 (*.f64 c b) (-.f64 (pow.f64 d 4) (pow.f64 c 4))) (-.f64 (*.f64 d d) (*.f64 c c)))
(*.f64 (/.f64 c (/.f64 (-.f64 (pow.f64 d 4) (pow.f64 c 4)) b)) (-.f64 (*.f64 d d) (*.f64 c c)))
(*.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 (*.f64 c c) 3) (pow.f64 (*.f64 d d) 3))) (-.f64 (+.f64 (*.f64 (*.f64 d d) (*.f64 d d)) (pow.f64 c 4)) (*.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 c (/.f64 (+.f64 (pow.f64 d 6) (pow.f64 (*.f64 c c) 3)) b)) (-.f64 (+.f64 (pow.f64 d 4) (pow.f64 c 4)) (*.f64 c (*.f64 c (*.f64 d d)))))
(*.f64 (/.f64 c (/.f64 (+.f64 (pow.f64 d 6) (pow.f64 c 6)) b)) (+.f64 (pow.f64 d 4) (*.f64 (*.f64 c c) (-.f64 (*.f64 c c) (*.f64 d d)))))
(/.f64 (*.f64 c b) (/.f64 (+.f64 (pow.f64 d 6) (pow.f64 c 6)) (+.f64 (pow.f64 d 4) (-.f64 (pow.f64 c 4) (*.f64 d (*.f64 c (*.f64 c d)))))))
(*.f64 (/.f64 (/.f64 c 1) 1) (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c 1) (hypot.f64 d c)) (/.f64 b (hypot.f64 d c)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c 1) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)) 2)) (/.f64 b (cbrt.f64 (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c 1) (neg.f64 (pow.f64 (hypot.f64 d c) 2))) (neg.f64 b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c 1) (/.f64 (pow.f64 (hypot.f64 d c) 2) 1)) b)
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c 1) (/.f64 (pow.f64 (hypot.f64 d c) 2) (sqrt.f64 b))) (sqrt.f64 b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c 1) (/.f64 (pow.f64 (hypot.f64 d c) 2) (pow.f64 (cbrt.f64 b) 2))) (cbrt.f64 b))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c 1) -1) (neg.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (/.f64 c 1) (neg.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (neg.f64 (neg.f64 b)))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (/.f64 (*.f64 (/.f64 c (hypot.f64 d c)) (sqrt.f64 b)) 1) (sqrt.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (/.f64 (*.f64 c (sqrt.f64 b)) (hypot.f64 d c)) (sqrt.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (sqrt.f64 b) (*.f64 (/.f64 c (hypot.f64 d c)) (sqrt.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2)))))
(*.f64 (/.f64 (*.f64 (/.f64 c (hypot.f64 d c)) (sqrt.f64 b)) (sqrt.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (sqrt.f64 (neg.f64 b)))
(*.f64 (/.f64 (/.f64 (*.f64 c (sqrt.f64 b)) (hypot.f64 d c)) (sqrt.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (sqrt.f64 (neg.f64 b)))
(*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) 1) (cbrt.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (/.f64 c (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 (cbrt.f64 (/.f64 b (pow.f64 (hypot.f64 d c) 2))) c) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2))
(*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 (pow.f64 (hypot.f64 d c) 2))) (cbrt.f64 b))
(/.f64 (*.f64 (/.f64 c (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 b)) (cbrt.f64 (pow.f64 (hypot.f64 d c) 2)))
(*.f64 (cbrt.f64 b) (/.f64 (/.f64 c (cbrt.f64 (pow.f64 (hypot.f64 d c) 2))) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)))
(*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (cbrt.f64 (neg.f64 b)))
(*.f64 (/.f64 c (*.f64 (cbrt.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2))) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2))) (cbrt.f64 (neg.f64 b)))
(/.f64 (/.f64 (*.f64 c (cbrt.f64 (neg.f64 b))) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2))))
(*.f64 (/.f64 (/.f64 c (cbrt.f64 (neg.f64 (pow.f64 (hypot.f64 d c) 2)))) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b)) 2)) (cbrt.f64 (neg.f64 b)))
(pow.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 1)
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 c) (hypot.f64 d c)) (sqrt.f64 b)) 2)
(pow.f64 (*.f64 (sqrt.f64 b) (/.f64 (sqrt.f64 c) (hypot.f64 d c))) 2)
(pow.f64 (/.f64 (sqrt.f64 c) (/.f64 (hypot.f64 d c) (sqrt.f64 b))) 2)
(pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))) 3)
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(pow.f64 (pow.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 3) 1/3)
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(pow.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) (*.f64 c b)) -1)
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(neg.f64 (/.f64 c (neg.f64 (/.f64 (pow.f64 (hypot.f64 d c) 2) b))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(sqrt.f64 (pow.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 2))
(sqrt.f64 (pow.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2)) 2))
(fabs.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2)))
(fabs.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(log.f64 (pow.f64 (exp.f64 c) (/.f64 b (pow.f64 (hypot.f64 d c) 2))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(cbrt.f64 (pow.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2))) 3))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(expm1.f64 (log1p.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(exp.f64 (log.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))
(log1p.f64 (expm1.f64 (*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))))
(/.f64 (*.f64 c b) (pow.f64 (hypot.f64 d c) 2))
(*.f64 c (/.f64 b (pow.f64 (hypot.f64 d c) 2)))

eval835.0ms (6.2%)

Compiler

Compiled 33663 to 11012 computations (67.3% saved)

prune515.0ms (3.8%)

Pruning

19 alts after pruning (17 fresh and 2 done)

PrunedKeptTotal
New1256141270
Fresh336
Picked101
Done224
Total1262191281
Accurracy
100.0%
Counts
1281 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
50.3%
(fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c))
50.2%
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
40.1%
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
39.5%
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
42.2%
(/.f64 (neg.f64 a) d)
16.2%
(/.f64 c (/.f64 (*.f64 d d) b))
28.8%
(/.f64 c (/.f64 (*.f64 c c) b))
17.8%
(/.f64 c (/.f64 d (/.f64 b d)))
17.1%
(/.f64 b (/.f64 d (/.f64 c d)))
42.5%
(/.f64 b c)
50.3%
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
63.6%
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
17.4%
(*.f64 (/.f64 (/.f64 b d) d) c)
19.3%
(*.f64 (/.f64 b d) (/.f64 c d))
98.4%
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a)))
29.9%
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 a (/.f64 c d)) (neg.f64 b)))
31.7%
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
26.6%
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))
42.5%
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
Compiler

Compiled 526 to 324 computations (38.4% saved)

localize24.0ms (0.2%)

Local Accuracy

Found 4 expressions with local accuracy:

NewAccuracyProgram
100.0%
(-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))
99.6%
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a)))
95.4%
(*.f64 (/.f64 d (hypot.f64 c d)) a)
85.7%
(*.f64 (/.f64 b (hypot.f64 c d)) c)
Compiler

Compiled 77 to 16 computations (79.2% saved)

series26.0ms (0.2%)

Counts
4 → 168
Calls

42 calls:

TimeVariablePointExpression
3.0ms
d
@0
(-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))
1.0ms
d
@0
(*.f64 (/.f64 d (hypot.f64 c d)) a)
1.0ms
b
@-inf
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a)))
1.0ms
c
@0
(*.f64 (/.f64 b (hypot.f64 c d)) c)
1.0ms
c
@-inf
(*.f64 (/.f64 d (hypot.f64 c d)) a)

rewrite281.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
1070×distribute-rgt-in
1010×distribute-lft-in
782×associate-/r/
516×associate-/l/
390×associate-+l+
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
015136
1329112
24651106
Stop Event
node limit
Counts
4 → 311
Calls
Call 1
Inputs
(*.f64 (/.f64 b (hypot.f64 c d)) c)
(*.f64 (/.f64 d (hypot.f64 c d)) a)
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a)))
(-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))
Outputs
(((-.f64 (exp.f64 (log1p.f64 (*.f64 c (/.f64 b (hypot.f64 c d))))) 1) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 b (/.f64 (hypot.f64 c d) c)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 c (/.f64 (hypot.f64 c d) b)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) (*.f64 b c))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 b c) (hypot.f64 c d)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 c (neg.f64 b)) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) c) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 b c) 1) (hypot.f64 c d)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 b c) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 b c) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c)) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d))) 1) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d)))) 2) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d)))) 3) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d))) 3) 1/3) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d))) 2)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c) (/.f64 b (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d))) 3)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d)))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 (hypot.f64 c d) a)))) 1) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 d (/.f64 (hypot.f64 c d) a)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 a (/.f64 (hypot.f64 c d) d)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) (*.f64 d a))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 d a) (hypot.f64 c d)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 a (neg.f64 d)) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) a) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 d a) 1) (hypot.f64 c d)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 d a) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 d a) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d a)) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 (hypot.f64 c d) a)) 1) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 (hypot.f64 c d) a))) 2) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 (hypot.f64 c d) a))) 3) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 (hypot.f64 c d) a)) 3) 1/3) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 (hypot.f64 c d) a)) 2)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 (hypot.f64 c d) a)) 3)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 (hypot.f64 c d) a))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 1 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (+.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (+.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (*.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d))))) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d)))) (*.f64 1 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) 1) (*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) 1) (*.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) 1) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) (-.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) (-.f64 1 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (/.f64 (*.f64 b c) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (/.f64 (*.f64 b c) (pow.f64 (hypot.f64 c d) 2)) (-.f64 (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (/.f64 (*.f64 b c) (pow.f64 (hypot.f64 c d) 2)) (-.f64 (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) (-.f64 (*.f64 b c) (*.f64 d a))) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (hypot.f64 c d)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2) (/.f64 (hypot.f64 c d) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) -1) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) (*.f64 d a)) (hypot.f64 c d))) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (/.f64 1 (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (/.f64 1 (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (*.f64 (sqrt.f64 (hypot.f64 c d)) (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))) (*.f64 (hypot.f64 c d) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (*.f64 (hypot.f64 c d) (-.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (+.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) 3)) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (+.f64 (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) 3)) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (+.f64 (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (pow.f64 (hypot.f64 c d) 3)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (neg.f64 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) 1) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) -1) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (neg.f64 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) 1) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) -1) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (neg.f64 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (hypot.f64 c d) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (hypot.f64 c d) (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) 1) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))) 2) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))) 3) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) 3) 1/3) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) 2)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) 3)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) 3)) (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (pow.f64 (hypot.f64 c d) 3))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))
(((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 1 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d a)) (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d a)) (hypot.f64 c d)) (+.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 c (/.f64 b (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (/.f64 d (/.f64 (hypot.f64 c d) a))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 c (/.f64 b (hypot.f64 c d)))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 c (/.f64 b (hypot.f64 c d)))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (exp.f64 (log1p.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))))) 1) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) 1) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (/.f64 1 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d (/.f64 (hypot.f64 c d) a))) (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d))))) (-.f64 (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (/.f64 (*.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (+.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a)))) (pow.f64 (hypot.f64 c d) 2)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (*.f64 (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (+.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 3))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (-.f64 (*.f64 (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) 1) (/.f64 1 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (sqrt.f64 (hypot.f64 c d))) (pow.f64 (hypot.f64 c d) -1/2)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (neg.f64 (hypot.f64 c d))) -1) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (-.f64 (*.f64 (*.f64 c c) (*.f64 c c)) (*.f64 (*.f64 d d) (*.f64 d d)))) (-.f64 (*.f64 c c) (*.f64 d d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (+.f64 (pow.f64 (*.f64 c c) 3) (pow.f64 (*.f64 d d) 3))) (+.f64 (*.f64 (*.f64 c c) (*.f64 c c)) (-.f64 (*.f64 (*.f64 d d) (*.f64 d d)) (*.f64 (*.f64 c c) (*.f64 d d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (*.f64 d a)) (hypot.f64 c d)) 1) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))) (*.f64 1 (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (-.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (*.f64 1 (-.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (+.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 3)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 3)) (*.f64 1 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)) (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)) (*.f64 1 (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (+.f64 (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) 3)) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (+.f64 (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (pow.f64 (hypot.f64 c d) 2)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 1 (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 1 (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 1) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 3) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) 1/3) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 1)) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (hypot.f64 c d)) c (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d)))) (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d)))) 2) (cbrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify351.0ms (2.6%)

Algorithm
egg-herbie
Rules
1438×associate-*r*
1246×+-commutative
1208×associate-*l*
1110×associate-+r+
1012×*-commutative
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0105137843
1324237205
Stop Event
node limit
Counts
479 → 651
Calls
Call 1
Inputs
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 (*.f64 c b) d)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (/.f64 (*.f64 c b) d))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 c 5) (+.f64 (*.f64 -1/4 (/.f64 b (pow.f64 d 5))) (*.f64 -1/8 (/.f64 b (pow.f64 d 5)))))) (/.f64 (*.f64 c b) d)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 c 5) (+.f64 (*.f64 -1/4 (/.f64 b (pow.f64 d 5))) (*.f64 -1/8 (/.f64 b (pow.f64 d 5)))))) (+.f64 (/.f64 (*.f64 c b) d) (*.f64 -1 (*.f64 (pow.f64 c 7) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 b (pow.f64 d 5))) (*.f64 -1/8 (/.f64 b (pow.f64 d 5)))) (pow.f64 d 2))) (*.f64 1/8 (/.f64 b (pow.f64 d 7)))))))))
b
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 d 4) b)) (*.f64 -1/8 (*.f64 (pow.f64 d 4) b))) (pow.f64 c 4))) b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 d 4) b)) (*.f64 -1/8 (*.f64 (pow.f64 d 4) b))))) (*.f64 1/8 (*.f64 (pow.f64 d 6) b))) (pow.f64 c 6))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 d 4) b)) (*.f64 -1/8 (*.f64 (pow.f64 d 4) b))) (pow.f64 c 4))) b)))
(*.f64 -1 b)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 4))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 4))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 d 4) b)) (*.f64 -1/8 (*.f64 (pow.f64 d 4) b))) (pow.f64 d 2)) (pow.f64 c 6))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b))))))
b
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 b (*.f64 -1 (*.f64 (pow.f64 d 4) (+.f64 (*.f64 -1/8 (/.f64 b (pow.f64 c 4))) (*.f64 -1/4 (/.f64 b (pow.f64 c 4))))))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 b (pow.f64 c 4))) (*.f64 -1/4 (/.f64 b (pow.f64 c 4)))) (pow.f64 c 2))) (*.f64 1/8 (/.f64 b (pow.f64 c 6)))) (pow.f64 d 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 b (*.f64 -1 (*.f64 (pow.f64 d 4) (+.f64 (*.f64 -1/8 (/.f64 b (pow.f64 c 4))) (*.f64 -1/4 (/.f64 b (pow.f64 c 4)))))))))
(/.f64 (*.f64 c b) d)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (/.f64 (*.f64 c b) d))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 c 5) b)) (*.f64 -1/8 (*.f64 (pow.f64 c 5) b))) (pow.f64 d 5))) (/.f64 (*.f64 c b) d)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 c 5) b)) (*.f64 -1/8 (*.f64 (pow.f64 c 5) b))))) (*.f64 1/8 (*.f64 (pow.f64 c 7) b))) (pow.f64 d 7))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 c 5) b)) (*.f64 -1/8 (*.f64 (pow.f64 c 5) b))) (pow.f64 d 5))) (/.f64 (*.f64 c b) d))))
(*.f64 -1 (/.f64 (*.f64 c b) d))
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 5))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))))))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 7))) (+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 c 5) b)) (*.f64 -1/8 (*.f64 (pow.f64 c 5) b)))) (pow.f64 d 7))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 5))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))))))))
(/.f64 (*.f64 a d) c)
(+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 d 5))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3)))))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 d 5))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 d 7) (+.f64 (*.f64 1/8 (/.f64 a (pow.f64 c 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 c 2)))))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
a
(+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))))
(+.f64 a (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a))) (pow.f64 d 4))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 c 6) a)) (*.f64 -1/2 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a)))))) (pow.f64 d 6))) (+.f64 a (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a))) (pow.f64 d 4))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))))))
(*.f64 -1 a)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (*.f64 -1 a))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a)))) (pow.f64 d 6))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 6) a) (pow.f64 d 6))) (*.f64 -1 a))))))
a
(+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 -1/8 (/.f64 a (pow.f64 d 4))) (*.f64 -1/4 (/.f64 a (pow.f64 d 4)))))) (+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 -1/8 (/.f64 a (pow.f64 d 4))) (*.f64 -1/4 (/.f64 a (pow.f64 d 4)))))) (+.f64 a (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 (*.f64 (pow.f64 c 6) (+.f64 (*.f64 1/8 (/.f64 a (pow.f64 d 6))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 a (pow.f64 d 4))) (*.f64 -1/4 (/.f64 a (pow.f64 d 4)))) (pow.f64 d 2)))))))))
(/.f64 (*.f64 a d) c)
(+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5)))) (pow.f64 c 5))) (+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5)))) (pow.f64 c 5))) (+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 a (pow.f64 d 7))) (*.f64 -1/2 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5))))))) (pow.f64 c 7))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(*.f64 -1 (/.f64 (*.f64 a d) c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))) (*.f64 -1/8 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 a (pow.f64 d 7)) (pow.f64 c 7))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5))))) (pow.f64 c 7))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))) (*.f64 -1/8 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 (pow.f64 c 2) (-.f64 (*.f64 1/2 (/.f64 a (pow.f64 d 3))) (*.f64 -1/2 (/.f64 a (pow.f64 d 3))))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (*.f64 (pow.f64 c 3) (-.f64 (*.f64 -1/2 (/.f64 b (pow.f64 d 4))) (*.f64 1/2 (/.f64 b (pow.f64 d 4))))) (+.f64 (*.f64 (pow.f64 c 2) (-.f64 (*.f64 1/2 (/.f64 a (pow.f64 d 3))) (*.f64 -1/2 (/.f64 a (pow.f64 d 3))))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 b c) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 d 2) b)) (*.f64 -1/2 (*.f64 (pow.f64 d 2) b))) (pow.f64 c 3))) (/.f64 b c)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 d 2) b)) (*.f64 -1/2 (*.f64 (pow.f64 d 2) b))) (pow.f64 c 3))) (+.f64 (/.f64 b c) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)))))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 b c) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 b (pow.f64 c 3))) (*.f64 1/2 (/.f64 b (pow.f64 c 3)))) (pow.f64 d 2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 a (pow.f64 c 4))) (*.f64 -1/2 (/.f64 a (pow.f64 c 4)))) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 b c) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 b (pow.f64 c 3))) (*.f64 1/2 (/.f64 b (pow.f64 c 3)))) (pow.f64 d 2)))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 1/2 (*.f64 (pow.f64 c 2) a))) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 1/2 (*.f64 (pow.f64 c 2) a))) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(*.f64 -1 a)
(+.f64 (/.f64 (*.f64 c b) d) (*.f64 -1 a))
(+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a))))
b
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 b (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(*.f64 -1 b)
(+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1 b))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b)))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b))))
b
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 b (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(*.f64 -1 a)
(+.f64 (/.f64 (*.f64 c b) d) (*.f64 -1 a))
(+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a))))
a
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) a)
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (+.f64 a (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 c (/.f64 b (hypot.f64 c d))))) 1)
(/.f64 b (/.f64 (hypot.f64 c d) c))
(/.f64 c (/.f64 (hypot.f64 c d) b))
(/.f64 1 (/.f64 (hypot.f64 c d) (*.f64 b c)))
(/.f64 (*.f64 b c) (hypot.f64 c d))
(/.f64 (*.f64 c (neg.f64 b)) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 (neg.f64 b) c) (neg.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (*.f64 b c) 1) (hypot.f64 c d))
(/.f64 (/.f64 (*.f64 b c) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (*.f64 b c) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d)))
(/.f64 (neg.f64 (*.f64 b c)) (neg.f64 (hypot.f64 c d)))
(pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 1)
(pow.f64 (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) 2)
(pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) 3)
(pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2))
(log.f64 (pow.f64 (exp.f64 c) (/.f64 b (hypot.f64 c d))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 c (/.f64 b (hypot.f64 c d))))))
(cbrt.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3))
(expm1.f64 (log1p.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))))
(exp.f64 (log.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))))
(exp.f64 (*.f64 (log.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) 1))
(log1p.f64 (expm1.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) 1)
(/.f64 d (/.f64 (hypot.f64 c d) a))
(/.f64 a (/.f64 (hypot.f64 c d) d))
(/.f64 1 (/.f64 (hypot.f64 c d) (*.f64 d a)))
(/.f64 (*.f64 d a) (hypot.f64 c d))
(/.f64 (*.f64 a (neg.f64 d)) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 (neg.f64 d) a) (neg.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (*.f64 d a) 1) (hypot.f64 c d))
(/.f64 (/.f64 (*.f64 d a) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (*.f64 d a) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d)))
(/.f64 (neg.f64 (*.f64 d a)) (neg.f64 (hypot.f64 c d)))
(pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 1)
(pow.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2)
(pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)
(pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) 1/3)
(sqrt.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))
(log.f64 (exp.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(cbrt.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))
(expm1.f64 (log1p.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))))
(exp.f64 (log.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))))
(exp.f64 (*.f64 (log.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))
(log1p.f64 (expm1.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 1 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 1))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))) 1))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))
(+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))))
(+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (+.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (+.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (*.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))
(+.f64 (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d))))) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))))
(+.f64 (*.f64 1 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d)))) (*.f64 1 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) 1) (*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) 1))
(+.f64 (*.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) 1) (*.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))) 1))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) 1)
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) (-.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) (-.f64 1 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(-.f64 (/.f64 (*.f64 b c) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (/.f64 (*.f64 b c) (pow.f64 (hypot.f64 c d) 2)) (-.f64 (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(-.f64 (/.f64 (*.f64 b c) (pow.f64 (hypot.f64 c d) 2)) (-.f64 (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(/.f64 1 (*.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 d a))) (hypot.f64 c d)))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (hypot.f64 c d))
(/.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2) (/.f64 (hypot.f64 c d) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) -1) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (/.f64 1 (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (/.f64 1 (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (*.f64 (sqrt.f64 (hypot.f64 c d)) (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))) (*.f64 (hypot.f64 c d) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (*.f64 (hypot.f64 c d) (-.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (+.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) 3)) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (+.f64 (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) 3)) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (+.f64 (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))))))
(/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))
(/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (pow.f64 (hypot.f64 c d) 3))
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (neg.f64 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) 1) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) -1) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (neg.f64 (hypot.f64 c d))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) 1) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (hypot.f64 c d)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) -1) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (neg.f64 (hypot.f64 c d))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (hypot.f64 c d) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (hypot.f64 c d) (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(/.f64 (neg.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (neg.f64 (hypot.f64 c d)))
(pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) 1)
(pow.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))) 2)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))) 3)
(pow.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) 3) 1/3)
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) 2))
(log.f64 (exp.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) 3))
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (pow.f64 (hypot.f64 c d) 3)))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))))
(exp.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))) 1))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 1 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 1))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 1))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) 1))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 c (/.f64 b (hypot.f64 c d))))
(+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (/.f64 d (/.f64 (hypot.f64 c d) a)))
(+.f64 (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 c (/.f64 b (hypot.f64 c d)))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 c (/.f64 b (hypot.f64 c d)))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (exp.f64 (log1p.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))))) 1)
(*.f64 1 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 1)
(*.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(*.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (/.f64 1 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(*.f64 (+.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d))))) (-.f64 (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(*.f64 (/.f64 1 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)))
(*.f64 (/.f64 1 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (/.f64 (*.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (+.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a)))) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (*.f64 (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (+.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 3))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (-.f64 (*.f64 (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) 1) (/.f64 1 (hypot.f64 c d)))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (sqrt.f64 (hypot.f64 c d))) (pow.f64 (hypot.f64 c d) -1/2))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (/.f64 1 (hypot.f64 c d))))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (neg.f64 (hypot.f64 c d))) -1)
(*.f64 (/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (-.f64 (*.f64 (*.f64 c c) (*.f64 c c)) (*.f64 (*.f64 d d) (*.f64 d d)))) (-.f64 (*.f64 c c) (*.f64 d d)))
(*.f64 (/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (+.f64 (pow.f64 (*.f64 c c) 3) (pow.f64 (*.f64 d d) 3))) (+.f64 (*.f64 (*.f64 c c) (*.f64 c c)) (-.f64 (*.f64 (*.f64 d d) (*.f64 d d)) (*.f64 (*.f64 c c) (*.f64 d d)))))
(/.f64 1 (/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))
(/.f64 1 (*.f64 1 (/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)))))
(/.f64 1 (*.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)))))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 1)
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))) (*.f64 1 (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (-.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (*.f64 1 (-.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (+.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 3)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))))))
(/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 3)) (*.f64 1 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)) (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)) (*.f64 1 (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (+.f64 (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) 3)) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (+.f64 (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))))))
(/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))
(/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (pow.f64 (hypot.f64 c d) 2))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 1 (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 1 (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 1)
(pow.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 3)
(pow.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) 1/3)
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2))
(log.f64 (exp.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(exp.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 1))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(fma.f64 1 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(fma.f64 1 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(fma.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(fma.f64 (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) 2) (cbrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
Outputs
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(/.f64 (*.f64 c b) d)
(/.f64 c (/.f64 d b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (/.f64 (*.f64 c b) d))
(fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) (/.f64 c (/.f64 d b)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 c 5) (+.f64 (*.f64 -1/4 (/.f64 b (pow.f64 d 5))) (*.f64 -1/8 (/.f64 b (pow.f64 d 5)))))) (/.f64 (*.f64 c b) d)))
(fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) (fma.f64 -1 (*.f64 (pow.f64 c 5) (*.f64 (/.f64 b (pow.f64 d 5)) -3/8)) (/.f64 c (/.f64 d b))))
(fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) (fma.f64 -1 (*.f64 (pow.f64 c 5) (/.f64 (*.f64 b -3/8) (pow.f64 d 5))) (/.f64 c (/.f64 d b))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 c 5) (+.f64 (*.f64 -1/4 (/.f64 b (pow.f64 d 5))) (*.f64 -1/8 (/.f64 b (pow.f64 d 5)))))) (+.f64 (/.f64 (*.f64 c b) d) (*.f64 -1 (*.f64 (pow.f64 c 7) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 b (pow.f64 d 5))) (*.f64 -1/8 (/.f64 b (pow.f64 d 5)))) (pow.f64 d 2))) (*.f64 1/8 (/.f64 b (pow.f64 d 7)))))))))
(fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) (+.f64 (fma.f64 -1 (*.f64 (pow.f64 c 5) (*.f64 (/.f64 b (pow.f64 d 5)) -3/8)) (/.f64 c (/.f64 d b))) (neg.f64 (*.f64 (pow.f64 c 7) (fma.f64 -1/2 (/.f64 (*.f64 (/.f64 b (pow.f64 d 5)) -3/8) (*.f64 d d)) (*.f64 1/8 (/.f64 b (pow.f64 d 7))))))))
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) (fma.f64 -1 (*.f64 (pow.f64 c 5) (/.f64 (*.f64 b -3/8) (pow.f64 d 5))) (/.f64 c (/.f64 d b)))) (neg.f64 (*.f64 (pow.f64 c 7) (fma.f64 -1/2 (/.f64 (/.f64 (*.f64 b -3/8) (pow.f64 d 5)) (*.f64 d d)) (/.f64 (*.f64 b 1/8) (pow.f64 d 7))))))
b
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) b)
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 d 4) b)) (*.f64 -1/8 (*.f64 (pow.f64 d 4) b))) (pow.f64 c 4))) b))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 b (pow.f64 d 4)) -3/8) (pow.f64 c 4)) b))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (fma.f64 -1 (/.f64 (*.f64 b (*.f64 (pow.f64 d 4) -3/8)) (pow.f64 c 4)) b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 d 4) b)) (*.f64 -1/8 (*.f64 (pow.f64 d 4) b))))) (*.f64 1/8 (*.f64 (pow.f64 d 6) b))) (pow.f64 c 6))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 d 4) b)) (*.f64 -1/8 (*.f64 (pow.f64 d 4) b))) (pow.f64 c 4))) b)))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 d d) (*.f64 (*.f64 b (pow.f64 d 4)) -3/8)) (*.f64 1/8 (*.f64 b (pow.f64 d 6)))) (pow.f64 c 6)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 b (pow.f64 d 4)) -3/8) (pow.f64 c 4)) b)))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 b (pow.f64 d 6)) -3/8) (*.f64 (pow.f64 d 6) (*.f64 b 1/8))) (pow.f64 c 6)) (fma.f64 -1 (/.f64 (*.f64 b (*.f64 (pow.f64 d 4) -3/8)) (pow.f64 c 4)) b)))
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b))
(fma.f64 1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (neg.f64 b))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 4))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b))))
(fma.f64 -1/8 (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 4) b)) (fma.f64 -1/4 (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 4) b)) (fma.f64 1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (neg.f64 b))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (neg.f64 b)) (*.f64 (*.f64 (pow.f64 d 4) (/.f64 b (pow.f64 c 4))) -3/8))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 4))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 d 4) b) (pow.f64 c 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 d 6) b) (pow.f64 c 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 d 4) b)) (*.f64 -1/8 (*.f64 (pow.f64 d 4) b))) (pow.f64 d 2)) (pow.f64 c 6))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b))))))
(fma.f64 -1/8 (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 4) b)) (fma.f64 -1/4 (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 4) b)) (fma.f64 1/8 (/.f64 (pow.f64 d 6) (/.f64 (pow.f64 c 6) b)) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 b (pow.f64 d 4)) -3/8) (/.f64 (pow.f64 c 6) (*.f64 d d))) (fma.f64 1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (neg.f64 b))))))
(+.f64 (fma.f64 1/8 (/.f64 (pow.f64 d 6) (/.f64 (pow.f64 c 6) b)) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 b (pow.f64 d 6)) -3/8) (pow.f64 c 6)) (fma.f64 1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (neg.f64 b)))) (*.f64 (*.f64 (pow.f64 d 4) (/.f64 b (pow.f64 c 4))) -3/8))
b
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) b)
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 b (*.f64 -1 (*.f64 (pow.f64 d 4) (+.f64 (*.f64 -1/8 (/.f64 b (pow.f64 c 4))) (*.f64 -1/4 (/.f64 b (pow.f64 c 4))))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) b) (neg.f64 (*.f64 (pow.f64 d 4) (*.f64 (/.f64 b (pow.f64 c 4)) -3/8))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) b) (neg.f64 (*.f64 (*.f64 (pow.f64 d 4) (/.f64 b (pow.f64 c 4))) -3/8)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 b (pow.f64 c 4))) (*.f64 -1/4 (/.f64 b (pow.f64 c 4)))) (pow.f64 c 2))) (*.f64 1/8 (/.f64 b (pow.f64 c 6)))) (pow.f64 d 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 b (*.f64 -1 (*.f64 (pow.f64 d 4) (+.f64 (*.f64 -1/8 (/.f64 b (pow.f64 c 4))) (*.f64 -1/4 (/.f64 b (pow.f64 c 4)))))))))
(fma.f64 -1 (*.f64 (pow.f64 d 6) (fma.f64 -1/2 (/.f64 (*.f64 (/.f64 b (pow.f64 c 4)) -3/8) (*.f64 c c)) (*.f64 1/8 (/.f64 b (pow.f64 c 6))))) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) b) (neg.f64 (*.f64 (pow.f64 d 4) (*.f64 (/.f64 b (pow.f64 c 4)) -3/8)))))
(fma.f64 -1 (*.f64 (pow.f64 d 6) (fma.f64 -1/2 (/.f64 (*.f64 (/.f64 b (pow.f64 c 4)) -3/8) (*.f64 c c)) (/.f64 (*.f64 b 1/8) (pow.f64 c 6)))) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) b) (neg.f64 (*.f64 (*.f64 (pow.f64 d 4) (/.f64 b (pow.f64 c 4))) -3/8))))
(/.f64 (*.f64 c b) d)
(/.f64 c (/.f64 d b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (/.f64 (*.f64 c b) d))
(fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) (/.f64 c (/.f64 d b)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 c 5) b)) (*.f64 -1/8 (*.f64 (pow.f64 c 5) b))) (pow.f64 d 5))) (/.f64 (*.f64 c b) d)))
(fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 b (pow.f64 c 5)) -3/8) (pow.f64 d 5)) (/.f64 c (/.f64 d b))))
(fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 c 5) (*.f64 b -3/8)) (pow.f64 d 5)) (/.f64 c (/.f64 d b))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 c 5) b)) (*.f64 -1/8 (*.f64 (pow.f64 c 5) b))))) (*.f64 1/8 (*.f64 (pow.f64 c 7) b))) (pow.f64 d 7))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 c 5) b)) (*.f64 -1/8 (*.f64 (pow.f64 c 5) b))) (pow.f64 d 5))) (/.f64 (*.f64 c b) d))))
(fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 c c) (*.f64 (*.f64 b (pow.f64 c 5)) -3/8)) (*.f64 1/8 (*.f64 b (pow.f64 c 7)))) (pow.f64 d 7)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 b (pow.f64 c 5)) -3/8) (pow.f64 d 5)) (/.f64 c (/.f64 d b)))))
(fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 c c) (*.f64 (pow.f64 c 5) (*.f64 b -3/8))) (*.f64 b (*.f64 (pow.f64 c 7) 1/8))) (pow.f64 d 7)) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 c 5) (*.f64 b -3/8)) (pow.f64 d 5)) (/.f64 c (/.f64 d b)))))
(*.f64 -1 (/.f64 (*.f64 c b) d))
(neg.f64 (/.f64 c (/.f64 d b)))
(/.f64 (*.f64 b (neg.f64 c)) d)
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))))
(fma.f64 -1 (/.f64 c (/.f64 d b)) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) 1/2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 5))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))))))
(fma.f64 -1 (/.f64 c (/.f64 d b)) (fma.f64 -1/4 (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 5) b)) (fma.f64 -1/8 (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 5) b)) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) 1/2))))
(+.f64 (*.f64 (pow.f64 c 5) (/.f64 (*.f64 b -3/8) (pow.f64 d 5))) (fma.f64 -1 (/.f64 c (/.f64 d b)) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) 1/2)))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 7) b) (pow.f64 d 7))) (+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 c 5) b)) (*.f64 -1/8 (*.f64 (pow.f64 c 5) b)))) (pow.f64 d 7))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 5) b) (pow.f64 d 5))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))))))))
(fma.f64 1/8 (/.f64 (pow.f64 c 7) (/.f64 (pow.f64 d 7) b)) (fma.f64 -1 (/.f64 c (/.f64 d b)) (fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 7) (*.f64 (*.f64 b (pow.f64 c 5)) -3/8))) (fma.f64 -1/4 (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 5) b)) (fma.f64 -1/8 (/.f64 (pow.f64 c 5) (/.f64 (pow.f64 d 5) b)) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) 1/2))))))
(fma.f64 1/8 (/.f64 (pow.f64 c 7) (/.f64 (pow.f64 d 7) b)) (fma.f64 -1 (/.f64 c (/.f64 d b)) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 c c) (*.f64 (pow.f64 c 5) (*.f64 b -3/8))) (pow.f64 d 7)) (+.f64 (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) 1/2) (*.f64 (pow.f64 c 5) (/.f64 (*.f64 b -3/8) (pow.f64 d 5)))))))
(/.f64 (*.f64 a d) c)
(/.f64 a (/.f64 c d))
(+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))
(+.f64 (/.f64 a (/.f64 c d)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))
(+.f64 (/.f64 a (/.f64 c d)) (/.f64 (*.f64 -1/2 a) (/.f64 (pow.f64 c 3) (pow.f64 d 3))))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 d 5))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3)))))
(+.f64 (/.f64 a (/.f64 c d)) (fma.f64 -1 (*.f64 (pow.f64 d 5) (*.f64 (/.f64 a (pow.f64 c 5)) -3/8)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))))))
(+.f64 (/.f64 a (/.f64 c d)) (fma.f64 -1 (*.f64 (pow.f64 d 5) (/.f64 (*.f64 a -3/8) (pow.f64 c 5))) (/.f64 (*.f64 -1/2 a) (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 d 5))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 d 7) (+.f64 (*.f64 1/8 (/.f64 a (pow.f64 c 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 c 2)))))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(+.f64 (/.f64 a (/.f64 c d)) (fma.f64 -1 (*.f64 (pow.f64 d 5) (*.f64 (/.f64 a (pow.f64 c 5)) -3/8)) (fma.f64 -1 (*.f64 (pow.f64 d 7) (fma.f64 1/8 (/.f64 a (pow.f64 c 7)) (*.f64 -1/2 (/.f64 (*.f64 (/.f64 a (pow.f64 c 5)) -3/8) (*.f64 c c))))) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))))
(+.f64 (/.f64 a (/.f64 c d)) (fma.f64 -1 (*.f64 (pow.f64 d 5) (/.f64 (*.f64 a -3/8) (pow.f64 c 5))) (fma.f64 -1 (*.f64 (pow.f64 d 7) (fma.f64 1/8 (/.f64 a (pow.f64 c 7)) (/.f64 (*.f64 -1/2 (/.f64 (*.f64 a -3/8) (pow.f64 c 5))) (*.f64 c c)))) (/.f64 (*.f64 -1/2 a) (/.f64 (pow.f64 c 3) (pow.f64 d 3))))))
a
(+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))))
(+.f64 a (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a))))
(+.f64 a (/.f64 (*.f64 (*.f64 -1/2 c) c) (/.f64 (*.f64 d d) a)))
(+.f64 a (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a))) (pow.f64 d 4))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2)))))
(+.f64 a (fma.f64 -1 (/.f64 (*.f64 (*.f64 (pow.f64 c 4) a) -3/8) (pow.f64 d 4)) (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)))))
(+.f64 a (fma.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (*.f64 a -3/8)) (pow.f64 d 4)) (/.f64 (*.f64 (*.f64 -1/2 c) c) (/.f64 (*.f64 d d) a))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 c 6) a)) (*.f64 -1/2 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a)))))) (pow.f64 d 6))) (+.f64 a (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a))) (pow.f64 d 4))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))))))
(fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 (pow.f64 c 6) a) (*.f64 -1/2 (*.f64 (*.f64 c c) (*.f64 (*.f64 (pow.f64 c 4) a) -3/8)))) (pow.f64 d 6)) (+.f64 a (fma.f64 -1 (/.f64 (*.f64 (*.f64 (pow.f64 c 4) a) -3/8) (pow.f64 d 4)) (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a))))))
(fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 (pow.f64 c 6) a) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 c 6) a) -3/8))) (pow.f64 d 6)) (+.f64 a (fma.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (*.f64 a -3/8)) (pow.f64 d 4)) (/.f64 (*.f64 (*.f64 -1/2 c) c) (/.f64 (*.f64 d d) a)))))
(*.f64 -1 a)
(neg.f64 a)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a))
(fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 a))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (*.f64 -1 a))))
(fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (fma.f64 -1/8 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 d 4) a)) (fma.f64 -1/4 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 d 4) a)) (neg.f64 a))))
(fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (+.f64 (neg.f64 a) (*.f64 (/.f64 a (pow.f64 d 4)) (*.f64 -3/8 (pow.f64 c 4)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a)))) (pow.f64 d 6))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 6) a) (pow.f64 d 6))) (*.f64 -1 a))))))
(fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 6) (*.f64 (*.f64 (pow.f64 c 4) a) -3/8))) (fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (fma.f64 -1/4 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 d 4) a)) (fma.f64 -1/8 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 d 4) a)) (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 c 6) a) (pow.f64 d 6)) (neg.f64 a))))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 c 6) a) -3/8) (pow.f64 d 6)) (fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (+.f64 (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 c 6) a) (pow.f64 d 6)) (neg.f64 a)) (*.f64 (/.f64 a (pow.f64 d 4)) (*.f64 -3/8 (pow.f64 c 4))))))
a
(+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))))
(+.f64 a (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a))))
(+.f64 a (/.f64 (*.f64 (*.f64 -1/2 c) c) (/.f64 (*.f64 d d) a)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 -1/8 (/.f64 a (pow.f64 d 4))) (*.f64 -1/4 (/.f64 a (pow.f64 d 4)))))) (+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2)))))
(fma.f64 -1 (*.f64 (pow.f64 c 4) (*.f64 (/.f64 a (pow.f64 d 4)) -3/8)) (+.f64 a (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)))))
(fma.f64 -1 (*.f64 (/.f64 a (pow.f64 d 4)) (*.f64 -3/8 (pow.f64 c 4))) (+.f64 a (/.f64 (*.f64 (*.f64 -1/2 c) c) (/.f64 (*.f64 d d) a))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 -1/8 (/.f64 a (pow.f64 d 4))) (*.f64 -1/4 (/.f64 a (pow.f64 d 4)))))) (+.f64 a (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 (*.f64 (pow.f64 c 6) (+.f64 (*.f64 1/8 (/.f64 a (pow.f64 d 6))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 a (pow.f64 d 4))) (*.f64 -1/4 (/.f64 a (pow.f64 d 4)))) (pow.f64 d 2)))))))))
(fma.f64 -1 (*.f64 (pow.f64 c 4) (*.f64 (/.f64 a (pow.f64 d 4)) -3/8)) (+.f64 a (fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 (*.f64 (pow.f64 c 6) (fma.f64 1/8 (/.f64 a (pow.f64 d 6)) (*.f64 -1/2 (/.f64 (*.f64 (/.f64 a (pow.f64 d 4)) -3/8) (*.f64 d d)))))))))
(fma.f64 -1 (*.f64 (/.f64 a (pow.f64 d 4)) (*.f64 -3/8 (pow.f64 c 4))) (+.f64 a (fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 (*.f64 (pow.f64 c 6) (fma.f64 1/8 (/.f64 a (pow.f64 d 6)) (/.f64 (*.f64 (*.f64 -1/2 (/.f64 a (pow.f64 d 4))) -3/8) (*.f64 d d))))))))
(/.f64 (*.f64 a d) c)
(/.f64 a (/.f64 c d))
(+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))
(+.f64 (/.f64 a (/.f64 c d)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))
(+.f64 (/.f64 a (/.f64 c d)) (/.f64 (*.f64 -1/2 a) (/.f64 (pow.f64 c 3) (pow.f64 d 3))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5)))) (pow.f64 c 5))) (+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3)))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 (pow.f64 d 5) a) -3/8) (pow.f64 c 5)) (+.f64 (/.f64 a (/.f64 c d)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))))))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 d 5) (*.f64 a -3/8)) (pow.f64 c 5)) (+.f64 (/.f64 a (/.f64 c d)) (/.f64 (*.f64 -1/2 a) (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5)))) (pow.f64 c 5))) (+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 a (pow.f64 d 7))) (*.f64 -1/2 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5))))))) (pow.f64 c 7))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 (pow.f64 d 5) a) -3/8) (pow.f64 c 5)) (+.f64 (/.f64 a (/.f64 c d)) (fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 (pow.f64 d 7) a) (*.f64 (*.f64 -1/2 (*.f64 d d)) (*.f64 (*.f64 (pow.f64 d 5) a) -3/8))) (pow.f64 c 7)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 d 5) (*.f64 a -3/8)) (pow.f64 c 5)) (+.f64 (/.f64 a (/.f64 c d)) (fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 (pow.f64 d 7) a) (*.f64 (*.f64 (pow.f64 d 5) (*.f64 a -3/8)) (*.f64 (*.f64 d d) -1/2))) (pow.f64 c 7)) (/.f64 (*.f64 -1/2 a) (/.f64 (pow.f64 c 3) (pow.f64 d 3))))))
(*.f64 -1 (/.f64 (*.f64 a d) c))
(/.f64 (*.f64 d (neg.f64 a)) c)
(/.f64 (neg.f64 a) (/.f64 c d))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))
(fma.f64 -1 (/.f64 a (/.f64 c d)) (*.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))) (*.f64 -1/8 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))))))
(fma.f64 -1/4 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 5))) (fma.f64 -1 (/.f64 a (/.f64 c d)) (fma.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))) (/.f64 (*.f64 (*.f64 -1/8 a) (pow.f64 d 5)) (pow.f64 c 5)))))
(fma.f64 -1/4 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 5))) (fma.f64 -1 (/.f64 a (/.f64 c d)) (fma.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))) (*.f64 -1/8 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 5)))))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 a (pow.f64 d 7)) (pow.f64 c 7))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5))))) (pow.f64 c 7))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))) (*.f64 -1/8 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))))))))
(fma.f64 -1/4 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 5))) (fma.f64 1/8 (/.f64 a (/.f64 (pow.f64 c 7) (pow.f64 d 7))) (fma.f64 -1 (/.f64 a (/.f64 c d)) (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 7) (*.f64 (*.f64 (pow.f64 d 5) a) -3/8))) (fma.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))) (/.f64 (*.f64 (*.f64 -1/8 a) (pow.f64 d 5)) (pow.f64 c 5)))))))
(fma.f64 -1/4 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 5))) (fma.f64 1/8 (/.f64 a (/.f64 (pow.f64 c 7) (pow.f64 d 7))) (fma.f64 -1 (/.f64 a (/.f64 c d)) (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 7) (*.f64 (pow.f64 d 5) (*.f64 a -3/8)))) (fma.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))) (*.f64 -1/8 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 5)))))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d a))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d a))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d a))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d a))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d a))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d a))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d a))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d a))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d a))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d a))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d a))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d a))
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b)))
(+.f64 (*.f64 (pow.f64 c 2) (-.f64 (*.f64 1/2 (/.f64 a (pow.f64 d 3))) (*.f64 -1/2 (/.f64 a (pow.f64 d 3))))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(fma.f64 (*.f64 c c) (*.f64 (/.f64 a (pow.f64 d 3)) 1) (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))))
(fma.f64 (*.f64 c c) (*.f64 1 (/.f64 a (pow.f64 d 3))) (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))))
(+.f64 (*.f64 (pow.f64 c 3) (-.f64 (*.f64 -1/2 (/.f64 b (pow.f64 d 4))) (*.f64 1/2 (/.f64 b (pow.f64 d 4))))) (+.f64 (*.f64 (pow.f64 c 2) (-.f64 (*.f64 1/2 (/.f64 a (pow.f64 d 3))) (*.f64 -1/2 (/.f64 a (pow.f64 d 3))))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(fma.f64 (pow.f64 c 3) (*.f64 (/.f64 b (pow.f64 d 4)) -1) (fma.f64 (*.f64 c c) (*.f64 (/.f64 a (pow.f64 d 3)) 1) (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b)))))
(fma.f64 (pow.f64 c 3) (/.f64 (neg.f64 b) (pow.f64 d 4)) (fma.f64 (*.f64 c c) (*.f64 1 (/.f64 a (pow.f64 d 3))) (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c))
(fma.f64 -1 (/.f64 (*.f64 d a) (*.f64 c c)) (/.f64 b c))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c))) (*.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b))))
(+.f64 (/.f64 (*.f64 (*.f64 d d) -1/2) (/.f64 (pow.f64 c 3) b)) (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (fma.f64 -1 (/.f64 (*.f64 d a) (*.f64 c c)) (/.f64 b c))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 b c) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (+.f64 (fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c)) (*.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 4) (pow.f64 d 3)))))) (fma.f64 1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 4) (pow.f64 d 3))))))
(-.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (fma.f64 -1 (/.f64 (*.f64 d a) (*.f64 c c)) (/.f64 b c))) (/.f64 (*.f64 1/2 a) (/.f64 (pow.f64 c 4) (pow.f64 d 3)))) (fma.f64 1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (/.f64 (*.f64 -1/2 a) (/.f64 (pow.f64 c 4) (pow.f64 d 3)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c))
(fma.f64 -1 (/.f64 (*.f64 d a) (*.f64 c c)) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 d 2) b)) (*.f64 -1/2 (*.f64 (pow.f64 d 2) b))) (pow.f64 c 3))) (/.f64 b c)))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 b (*.f64 d d)) 1) (pow.f64 c 3)) (/.f64 b c)))
(fma.f64 -1 (/.f64 (*.f64 d a) (*.f64 c c)) (fma.f64 -1 (/.f64 (*.f64 b (*.f64 (*.f64 d d) 1)) (pow.f64 c 3)) (/.f64 b c)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 d 2) b)) (*.f64 -1/2 (*.f64 (pow.f64 d 2) b))) (pow.f64 c 3))) (+.f64 (/.f64 b c) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)))))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4))))
(+.f64 (fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 b (*.f64 d d)) 1) (pow.f64 c 3)) (+.f64 (/.f64 b c) (*.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 4) (pow.f64 d 3))))))) (*.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 4) (pow.f64 d 3)))))
(+.f64 (/.f64 (*.f64 1/2 a) (/.f64 (pow.f64 c 4) (pow.f64 d 3))) (+.f64 (fma.f64 -1 (/.f64 (*.f64 d a) (*.f64 c c)) (fma.f64 -1 (/.f64 (*.f64 b (*.f64 (*.f64 d d) 1)) (pow.f64 c 3)) (/.f64 b c))) (/.f64 (*.f64 1/2 a) (/.f64 (pow.f64 c 4) (pow.f64 d 3)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c))
(fma.f64 -1 (/.f64 (*.f64 d a) (*.f64 c c)) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 b c) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 b (pow.f64 c 3))) (*.f64 1/2 (/.f64 b (pow.f64 c 3)))) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c)) (*.f64 (*.f64 d d) (*.f64 (/.f64 b (pow.f64 c 3)) -1)))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 d a) (*.f64 c c)) (/.f64 b c)) (*.f64 (/.f64 b (pow.f64 c 3)) (*.f64 d (neg.f64 d))))
(+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 a (pow.f64 c 4))) (*.f64 -1/2 (/.f64 a (pow.f64 c 4)))) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 b c) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 b (pow.f64 c 3))) (*.f64 1/2 (/.f64 b (pow.f64 c 3)))) (pow.f64 d 2)))))
(fma.f64 (*.f64 (/.f64 a (pow.f64 c 4)) 1) (pow.f64 d 3) (+.f64 (fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c)) (*.f64 (*.f64 d d) (*.f64 (/.f64 b (pow.f64 c 3)) -1))))
(fma.f64 (*.f64 1 (/.f64 a (pow.f64 c 4))) (pow.f64 d 3) (+.f64 (fma.f64 -1 (/.f64 (*.f64 d a) (*.f64 c c)) (/.f64 b c)) (*.f64 (/.f64 b (pow.f64 c 3)) (*.f64 d (neg.f64 d)))))
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))
(+.f64 (+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (*.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a)))) (*.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a))))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (+.f64 (/.f64 (*.f64 1/2 (*.f64 (*.f64 a c) c)) (pow.f64 d 3)) (/.f64 (*.f64 1/2 (*.f64 (*.f64 a c) c)) (pow.f64 d 3))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 4)) (+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (*.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a))))) (fma.f64 1/2 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 4)) (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a)))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 4)) (+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))) (/.f64 (*.f64 1/2 (*.f64 (*.f64 a c) c)) (pow.f64 d 3)))) (fma.f64 1/2 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 4)) (*.f64 -1/2 (/.f64 (*.f64 (*.f64 a c) c) (pow.f64 d 3)))))
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b)))
(+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 1/2 (*.f64 (pow.f64 c 2) a))) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 c c) a) -1) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 c c) (neg.f64 a)) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 1/2 (*.f64 (pow.f64 c 2) a))) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 4)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 c c) a) -1) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))))) (*.f64 -1/2 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 4))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 4))) (fma.f64 -1/2 (/.f64 (*.f64 b (pow.f64 c 3)) (pow.f64 d 4)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 c c) (neg.f64 a)) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (/.f64 c (/.f64 (*.f64 d d) b))))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (+.f64 (*.f64 d d) (*.f64 c c))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))
(*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 -1 a)
(neg.f64 a)
(+.f64 (/.f64 (*.f64 c b) d) (*.f64 -1 a))
(+.f64 (/.f64 c (/.f64 d b)) (neg.f64 a))
(+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a)))
(+.f64 (/.f64 c (/.f64 d b)) (fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 a)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a))))
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) (/.f64 c (/.f64 d b))) (fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 a)))
b
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b)
(fma.f64 -1 (/.f64 a (/.f64 c d)) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (fma.f64 -1 (/.f64 a (/.f64 c d)) b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 b (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (+.f64 (fma.f64 -1 (/.f64 a (/.f64 c d)) b) (*.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (fma.f64 -1 (/.f64 a (/.f64 c d)) b)) (*.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1 b))
(+.f64 (neg.f64 b) (/.f64 a (/.f64 c d)))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b)))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (neg.f64 b)) (/.f64 a (/.f64 c d)))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (*.f64 -1 b))))
(+.f64 (/.f64 a (/.f64 c d)) (fma.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (neg.f64 b))))
b
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b)
(fma.f64 -1 (/.f64 a (/.f64 c d)) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (fma.f64 -1 (/.f64 a (/.f64 c d)) b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 b (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (+.f64 (fma.f64 -1 (/.f64 a (/.f64 c d)) b) (*.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (*.f64 c c) b)) (fma.f64 -1 (/.f64 a (/.f64 c d)) b)) (*.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))
(*.f64 -1 a)
(neg.f64 a)
(+.f64 (/.f64 (*.f64 c b) d) (*.f64 -1 a))
(+.f64 (/.f64 c (/.f64 d b)) (neg.f64 a))
(+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a)))
(+.f64 (/.f64 c (/.f64 d b)) (fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 a)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))) (+.f64 (/.f64 (*.f64 c b) d) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a))))
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) (/.f64 c (/.f64 d b))) (fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 a)))
a
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) a)
(fma.f64 -1 (/.f64 c (/.f64 d b)) a)
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2)))))
(+.f64 (fma.f64 -1 (/.f64 c (/.f64 d b)) a) (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a))))
(fma.f64 -1 (/.f64 c (/.f64 d b)) (+.f64 a (/.f64 (*.f64 (*.f64 -1/2 c) c) (/.f64 (*.f64 d d) a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 c b) d)) (+.f64 a (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 3))))))
(+.f64 (fma.f64 -1 (/.f64 c (/.f64 d b)) a) (fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 3) b)) 1/2)))
(*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 c (*.f64 b (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))
(*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))
(*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(+.f64 (*.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))) (*.f64 -1 (*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 (*.f64 d (neg.f64 a)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c))))))
(fma.f64 (*.f64 c b) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))) (*.f64 d (*.f64 (neg.f64 a) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 d d) (*.f64 c c)))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 c (/.f64 b (hypot.f64 c d))))) 1)
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(/.f64 b (/.f64 (hypot.f64 c d) c))
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(/.f64 c (/.f64 (hypot.f64 c d) b))
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(/.f64 1 (/.f64 (hypot.f64 c d) (*.f64 b c)))
(/.f64 1 (/.f64 (hypot.f64 c d) (*.f64 c b)))
(*.f64 1 (*.f64 b (/.f64 c (hypot.f64 c d))))
(/.f64 (*.f64 b c) (hypot.f64 c d))
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(/.f64 (*.f64 c (neg.f64 b)) (neg.f64 (hypot.f64 c d)))
(/.f64 c (/.f64 (neg.f64 (hypot.f64 c d)) (neg.f64 b)))
(/.f64 (*.f64 (neg.f64 b) c) (neg.f64 (hypot.f64 c d)))
(/.f64 c (/.f64 (neg.f64 (hypot.f64 c d)) (neg.f64 b)))
(/.f64 (/.f64 (*.f64 b c) 1) (hypot.f64 c d))
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(/.f64 (/.f64 (*.f64 b c) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (*.f64 c b) (*.f64 (sqrt.f64 (hypot.f64 c d)) (sqrt.f64 (hypot.f64 c d))))
(/.f64 (/.f64 (*.f64 b c) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (*.f64 c b) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d)))
(/.f64 (*.f64 c b) (*.f64 (cbrt.f64 (hypot.f64 c d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)))
(/.f64 (neg.f64 (*.f64 b c)) (neg.f64 (hypot.f64 c d)))
(/.f64 c (/.f64 (neg.f64 (hypot.f64 c d)) (neg.f64 b)))
(pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 1)
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(pow.f64 (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) 2)
(pow.f64 (sqrt.f64 (*.f64 b (/.f64 c (hypot.f64 c d)))) 2)
(pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) 3)
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) 1/3)
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(sqrt.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2))
(sqrt.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2))
(log.f64 (pow.f64 (exp.f64 c) (/.f64 b (hypot.f64 c d))))
(*.f64 (/.f64 b (hypot.f64 c d)) (log.f64 (exp.f64 c)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 c (/.f64 b (hypot.f64 c d))))))
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(cbrt.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3))
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(expm1.f64 (log1p.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))))
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(exp.f64 (log.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))))
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(exp.f64 (*.f64 (log.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) 1))
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(log1p.f64 (expm1.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))))
(*.f64 c (/.f64 b (hypot.f64 c d)))
(*.f64 b (/.f64 c (hypot.f64 c d)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) 1)
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 a (/.f64 (hypot.f64 c d) d))
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 1 (/.f64 (hypot.f64 c d) (*.f64 d a)))
(*.f64 (*.f64 d a) (/.f64 1 (hypot.f64 c d)))
(/.f64 (*.f64 d a) (hypot.f64 c d))
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a (neg.f64 d)) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 d (neg.f64 a)) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 (neg.f64 d) a) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 d (neg.f64 a)) (neg.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (*.f64 d a) 1) (hypot.f64 c d))
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (/.f64 (*.f64 d a) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (*.f64 d a) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d)))
(/.f64 (/.f64 d (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) a)) (cbrt.f64 (hypot.f64 c d)))
(/.f64 (*.f64 d a) (*.f64 (cbrt.f64 (hypot.f64 c d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)))
(/.f64 (neg.f64 (*.f64 d a)) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 d (neg.f64 a)) (neg.f64 (hypot.f64 c d)))
(pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 1)
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(pow.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2)
(pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2)
(pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) 1/3)
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(sqrt.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))
(sqrt.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))
(log.f64 (exp.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(cbrt.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(expm1.f64 (log1p.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(exp.f64 (log.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(exp.f64 (*.f64 (log.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(log1p.f64 (expm1.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (*.f64 2 (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 2 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (*.f64 2 (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 2 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (*.f64 2 (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 2 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (*.f64 2 (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 2 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 1 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (*.f64 2 (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 2 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) 1 (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 1))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))) 1))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (*.f64 2 (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 2 (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) 1 (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (+.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))))
(+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (+.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))))
(+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (*.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 1 (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))))
(+.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(+.f64 (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d))))) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 1 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d)))) (*.f64 1 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) 1) (*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) 1))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) 1) (*.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 1 (hypot.f64 c d))) 1))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) 1)
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) (-.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))) (-.f64 1 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(-.f64 (/.f64 (*.f64 b c) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(-.f64 (/.f64 (*.f64 b c) (pow.f64 (hypot.f64 c d) 2)) (-.f64 (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(-.f64 (/.f64 (*.f64 b c) (pow.f64 (hypot.f64 c d) 2)) (-.f64 (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 1 (hypot.f64 c d)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(/.f64 1 (*.f64 (/.f64 (hypot.f64 c d) (-.f64 (*.f64 b c) (*.f64 d a))) (hypot.f64 c d)))
(/.f64 1 (/.f64 (pow.f64 (hypot.f64 c d) 2) (fma.f64 b c (*.f64 d (neg.f64 a)))))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (hypot.f64 c d))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(/.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2) (/.f64 (hypot.f64 c d) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(/.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) -1) (neg.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (neg.f64 (fma.f64 b c (*.f64 d (neg.f64 a)))) (hypot.f64 c d)) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (neg.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (neg.f64 (fma.f64 b c (*.f64 d (neg.f64 a)))) (hypot.f64 c d)) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (/.f64 1 (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (/.f64 1 (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (*.f64 (sqrt.f64 (hypot.f64 c d)) (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (*.f64 (sqrt.f64 (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (sqrt.f64 (hypot.f64 c d)))))
(/.f64 (/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 (cbrt.f64 (hypot.f64 c d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))) (*.f64 (hypot.f64 c d) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))) (*.f64 (hypot.f64 c d) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))) (*.f64 (hypot.f64 c d) (-.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (*.f64 (hypot.f64 c d) (-.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (*.f64 (hypot.f64 c d) (-.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (*.f64 (hypot.f64 c d) (-.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 6) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 6)) (*.f64 (hypot.f64 c d) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 6) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 6)) (*.f64 (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (+.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 4) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 4)) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 4) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 4)) (*.f64 (hypot.f64 c d) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)))))
(/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) (-.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d))))))))
(/.f64 (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) (-.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) (*.f64 b (/.f64 c (hypot.f64 c d))))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (-.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))))))
(/.f64 (/.f64 (+.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (-.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) 3)) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (+.f64 (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) 3)) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 6) (+.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 6) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) 3)) (*.f64 (hypot.f64 c d) (*.f64 (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (+.f64 (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 6) (*.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 6)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) 3)) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (+.f64 (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) 3)) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 4) (+.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 4) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 6) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 6)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 4) (+.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 4) (*.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)))))
(/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (pow.f64 (hypot.f64 c d) 3))
(/.f64 (-.f64 (*.f64 (hypot.f64 c d) (*.f64 c b)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (pow.f64 (hypot.f64 c d) 3))
(/.f64 (-.f64 (*.f64 b (*.f64 c (hypot.f64 c d))) (*.f64 a (*.f64 d (hypot.f64 c d)))) (pow.f64 (hypot.f64 c d) 3))
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (neg.f64 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (neg.f64 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (hypot.f64 c d) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) 1) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (hypot.f64 c d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) -1) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (neg.f64 (hypot.f64 c d))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (neg.f64 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (hypot.f64 c d) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) 1) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (hypot.f64 c d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) -1) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (neg.f64 (hypot.f64 c d))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (hypot.f64 c d) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (neg.f64 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (hypot.f64 c d) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (hypot.f64 c d) (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))
(/.f64 (neg.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (neg.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (neg.f64 (fma.f64 b c (*.f64 d (neg.f64 a)))) (hypot.f64 c d)) (neg.f64 (hypot.f64 c d)))
(pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) 1)
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(pow.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))) 2)
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))) 2)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))) 3)
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(pow.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) 3) 1/3)
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) 2))
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2)) 2))
(log.f64 (exp.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)) 3))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 3) (pow.f64 (hypot.f64 c d) 3)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 3) (pow.f64 (hypot.f64 c d) 3)))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (pow.f64 (hypot.f64 c d) 3)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 3) (pow.f64 (hypot.f64 c d) 3)))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(exp.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))) 1))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (hypot.f64 c d) 2))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (+.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (+.f64 (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (+.f64 (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 1 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 1))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (fma.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) 1 (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 4))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 4 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 2 (fma.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 2 (fma.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) 1 (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (+.f64 (fma.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (fma.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) 1 (*.f64 d (/.f64 a (hypot.f64 c d)))) (+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (+.f64 (fma.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (fma.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) 1 (*.f64 d (/.f64 a (hypot.f64 c d)))) (+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 2 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 2 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2)))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (*.f64 3 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) 1 (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 1))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) 1))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))
(+.f64 (fma.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) 1 (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d))))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (+.f64 (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (+.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 c (/.f64 b (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 1) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (/.f64 (neg.f64 d) (hypot.f64 c d)) a (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (fma.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) 1 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) 1 (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (+.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 -1 (pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) 2) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (+.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (/.f64 d (/.f64 (hypot.f64 c d) a)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 c (/.f64 b (hypot.f64 c d)))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(+.f64 (+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (*.f64 c (/.f64 b (hypot.f64 c d)))) (+.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(+.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))) (*.f64 2 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (exp.f64 (log1p.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))))) 1)
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(*.f64 1 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 1)
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(*.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (/.f64 1 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))
(*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(*.f64 (+.f64 (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a))) (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d))))) (-.f64 (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(*.f64 (+.f64 (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))) (-.f64 (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (sqrt.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(*.f64 (+.f64 (sqrt.f64 (*.f64 b (/.f64 c (hypot.f64 c d)))) (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) (-.f64 (sqrt.f64 (*.f64 b (/.f64 c (hypot.f64 c d)))) (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))))
(*.f64 (/.f64 1 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))
(*.f64 (/.f64 1 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (/.f64 (*.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (hypot.f64 c d) 2)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (/.f64 (*.f64 c b) (/.f64 (pow.f64 (hypot.f64 c d) 2) (*.f64 d a)))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (-.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (/.f64 (*.f64 c b) (/.f64 (pow.f64 (hypot.f64 c d) 2) (*.f64 d a))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (+.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a)))) (pow.f64 (hypot.f64 c d) 2))
(*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (fma.f64 (*.f64 c b) (hypot.f64 c d) (*.f64 (hypot.f64 c d) (*.f64 d a)))))
(*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (fma.f64 (*.f64 c b) (hypot.f64 c d) (*.f64 a (*.f64 d (hypot.f64 c d))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (*.f64 (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 4) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 4) (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))) (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (+.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 3))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (-.f64 (*.f64 (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (+.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) 3))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 4) (*.f64 (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (-.f64 (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 6) (pow.f64 (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) 3))) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 4) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (-.f64 (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2))))))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) 1) (/.f64 1 (hypot.f64 c d)))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (sqrt.f64 (hypot.f64 c d))) (pow.f64 (hypot.f64 c d) -1/2))
(*.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (sqrt.f64 (hypot.f64 c d))) (pow.f64 (hypot.f64 c d) -1/2))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (/.f64 1 (hypot.f64 c d))))
(*.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (/.f64 1 (hypot.f64 c d))))
(*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (neg.f64 (hypot.f64 c d))) -1)
(*.f64 -1 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (neg.f64 (hypot.f64 c d))))
(/.f64 (*.f64 -1 (fma.f64 b c (*.f64 d (neg.f64 a)))) (neg.f64 (hypot.f64 c d)))
(*.f64 (/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (-.f64 (*.f64 (*.f64 c c) (*.f64 c c)) (*.f64 (*.f64 d d) (*.f64 d d)))) (-.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (*.f64 (-.f64 (*.f64 (hypot.f64 c d) (*.f64 c b)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (-.f64 (*.f64 c c) (*.f64 d d))) (-.f64 (pow.f64 c 4) (pow.f64 d 4)))
(*.f64 (/.f64 (-.f64 (*.f64 b (*.f64 c (hypot.f64 c d))) (*.f64 a (*.f64 d (hypot.f64 c d)))) (-.f64 (pow.f64 c 4) (pow.f64 d 4))) (-.f64 (*.f64 c c) (*.f64 d d)))
(*.f64 (/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (+.f64 (pow.f64 (*.f64 c c) 3) (pow.f64 (*.f64 d d) 3))) (+.f64 (*.f64 (*.f64 c c) (*.f64 c c)) (-.f64 (*.f64 (*.f64 d d) (*.f64 d d)) (*.f64 (*.f64 c c) (*.f64 d d)))))
(*.f64 (/.f64 (-.f64 (*.f64 (hypot.f64 c d) (*.f64 c b)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (+.f64 (pow.f64 d 6) (pow.f64 c 6))) (+.f64 (pow.f64 c 4) (-.f64 (pow.f64 d 4) (*.f64 c (*.f64 c (*.f64 d d))))))
(/.f64 (*.f64 (-.f64 (*.f64 b (*.f64 c (hypot.f64 c d))) (*.f64 a (*.f64 d (hypot.f64 c d)))) (-.f64 (+.f64 (pow.f64 d 4) (pow.f64 c 4)) (*.f64 c (*.f64 d (*.f64 c d))))) (+.f64 (pow.f64 d 6) (pow.f64 c 6)))
(/.f64 1 (/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 1 (*.f64 1 (/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))
(/.f64 1 (*.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 1)
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))) (-.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))) (*.f64 1 (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))) (-.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (-.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (-.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (-.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (*.f64 1 (-.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (-.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (-.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 6) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 6)) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 6) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 6)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (+.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 4) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 4)) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 4) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 4)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 3)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))))))
(/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) 3)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) (-.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) 3)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) (-.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) (*.f64 b (/.f64 c (hypot.f64 c d)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) 3)) (*.f64 1 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (*.f64 (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) 3)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) (-.f64 (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) 3)) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) (-.f64 (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))) (*.f64 b (/.f64 c (hypot.f64 c d)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)) (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)) (+.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (-.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) 3)) (+.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (-.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)) (*.f64 1 (+.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (*.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) 3)) (+.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (-.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 3) (pow.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) 3)) (+.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2) (*.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (-.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (+.f64 (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 6) (+.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 6) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (+.f64 (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 6) (*.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 6))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) 3)) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (+.f64 (*.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2) 3)) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 4) (+.f64 (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 4) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 6) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 6)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 4) (+.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 4) (*.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)))))
(/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(/.f64 (-.f64 (*.f64 (*.f64 b c) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (pow.f64 (hypot.f64 c d) 2))
(/.f64 (-.f64 (*.f64 (hypot.f64 c d) (*.f64 c b)) (*.f64 (hypot.f64 c d) (*.f64 d a))) (pow.f64 (hypot.f64 c d) 2))
(/.f64 (-.f64 (*.f64 b (*.f64 c (hypot.f64 c d))) (*.f64 a (*.f64 d (hypot.f64 c d)))) (pow.f64 (hypot.f64 c d) 2))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2))) (*.f64 1 (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 2)) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (*.f64 1 (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 d (/.f64 (hypot.f64 c d) a)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 b (/.f64 c (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))
(pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 1)
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(pow.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2)
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 3)
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(pow.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3) 1/3)
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 2))
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)) 2))
(log.f64 (exp.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) 3))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(exp.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 1))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))))
(/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))
(fma.f64 (/.f64 b (hypot.f64 c d)) c (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))
(fma.f64 1 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(fma.f64 1 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))
(fma.f64 1 (*.f64 b (/.f64 c (hypot.f64 c d))) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))
(fma.f64 1 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (sqrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(+.f64 (pow.f64 (sqrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) 2) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))
(+.f64 (pow.f64 (sqrt.f64 (*.f64 b (/.f64 c (hypot.f64 c d)))) 2) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) 2) (cbrt.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 d a)) (hypot.f64 c d))) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 d (/.f64 (hypot.f64 c d) a))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(+.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (fma.f64 b c (*.f64 d (neg.f64 a))) (hypot.f64 c d)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) 2) (cbrt.f64 (*.f64 c (/.f64 b (hypot.f64 c d)))) (/.f64 (neg.f64 (*.f64 d a)) (hypot.f64 c d)))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 d (neg.f64 a)) (hypot.f64 c d)))
(fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 (neg.f64 d) (hypot.f64 c d))))

localize52.0ms (0.4%)

Compiler

Compiled 12 to 6 computations (50% saved)

localize11.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
99.8%
(/.f64 d (/.f64 b d))
93.7%
(/.f64 c (/.f64 d (/.f64 b d)))
Compiler

Compiled 22 to 7 computations (68.2% saved)

series2.0ms (0%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
0.0ms
b
@-inf
(/.f64 d (/.f64 b d))
0.0ms
b
@0
(/.f64 d (/.f64 b d))
0.0ms
d
@0
(/.f64 d (/.f64 b d))
0.0ms
d
@inf
(/.f64 d (/.f64 b d))
0.0ms
c
@0
(/.f64 c (/.f64 d (/.f64 b d)))

rewrite194.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
1138×associate-/r/
1028×*-commutative
690×unswap-sqr
690×swap-sqr
644×associate-/l/
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
117732
2265032
Stop Event
node limit
Counts
2 → 221
Calls
Call 1
Inputs
(/.f64 c (/.f64 d (/.f64 b d)))
(/.f64 d (/.f64 b d))
Outputs
(((-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) 1) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 c (/.f64 b (*.f64 d d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b d) (/.f64 c d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 1) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b d) (/.f64 c d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b d) (/.f64 c d))) (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b d)) (*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 c d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c) (*.f64 (sqrt.f64 c) (/.f64 b (*.f64 d d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (/.f64 b d) (/.f64 c d))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (/.f64 b d) (/.f64 c d))) (/.f64 (pow.f64 (cbrt.f64 c) 2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (/.f64 b d) (/.f64 c d))) 2) (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b d)) (*.f64 (pow.f64 (cbrt.f64 (/.f64 b d)) 2) (/.f64 c d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c) 2) (*.f64 (cbrt.f64 c) (/.f64 b (*.f64 d d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c d) (/.f64 b d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (*.f64 c (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (*.f64 b (/.f64 c d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b (*.f64 d d)) c) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b (*.f64 d d)) (/.f64 c 1)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b (neg.f64 d)) (/.f64 c (neg.f64 d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c) (/.f64 b (*.f64 d (neg.f64 d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b d)) (/.f64 c d)) (sqrt.f64 (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b d)) 2) (/.f64 c d)) (cbrt.f64 (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (/.f64 b (*.f64 d d))) (sqrt.f64 c)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (/.f64 b (*.f64 d d))) (pow.f64 (cbrt.f64 c) 2)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c 1) (/.f64 b (*.f64 d d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))) (/.f64 (sqrt.f64 b) d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 b (/.f64 c d)) (/.f64 1 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) d) (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d (/.f64 d b))) 2)) (/.f64 c (cbrt.f64 (*.f64 d (/.f64 d b))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (sqrt.f64 d)) (/.f64 b (*.f64 d (sqrt.f64 d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (pow.f64 (cbrt.f64 d) 2)) (/.f64 b (*.f64 d (cbrt.f64 d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (cbrt.f64 (*.f64 d (/.f64 d b)))) (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (neg.f64 d)) (/.f64 b (neg.f64 d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (*.f64 c (/.f64 b (neg.f64 d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) d) (*.f64 (/.f64 (sqrt.f64 c) d) b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c) d) b) (/.f64 (sqrt.f64 c) d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) 1) (*.f64 (/.f64 (sqrt.f64 c) d) (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c) d) (/.f64 b d)) (sqrt.f64 c)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c) d) (/.f64 b d)) (/.f64 (sqrt.f64 c) 1)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (/.f64 (sqrt.f64 c) (cbrt.f64 (*.f64 d (/.f64 d b))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (cbrt.f64 (*.f64 d (/.f64 d b)))) (/.f64 (sqrt.f64 c) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) 2) d) (*.f64 (/.f64 (cbrt.f64 c) d) b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 (cbrt.f64 c) d) b) (/.f64 (pow.f64 (cbrt.f64 c) 2) d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) 2) 1) (*.f64 (/.f64 (cbrt.f64 c) d) (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 (cbrt.f64 c) d) (/.f64 b d)) (/.f64 (pow.f64 (cbrt.f64 c) 2) 1)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) 2) (/.f64 1 (/.f64 (sqrt.f64 b) d))) (/.f64 (cbrt.f64 c) (/.f64 1 (/.f64 (sqrt.f64 b) d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (/.f64 1 (/.f64 (sqrt.f64 b) d))) (/.f64 (pow.f64 (cbrt.f64 c) 2) (/.f64 1 (/.f64 (sqrt.f64 b) d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) 2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 (cbrt.f64 c) 2) d) b) (/.f64 (cbrt.f64 c) d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) d) (*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) d) b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 b (*.f64 d (neg.f64 d))) (neg.f64 c)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c -1) (/.f64 b (*.f64 d (neg.f64 d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (*.f64 d d)) b) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (/.f64 d 1)) (/.f64 b d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (/.f64 d (sqrt.f64 (/.f64 b d)))) (sqrt.f64 (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 c (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2))) (cbrt.f64 (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d (*.f64 (sqrt.f64 c) (/.f64 b d)))) (sqrt.f64 c)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d (*.f64 (pow.f64 (cbrt.f64 c) 2) (/.f64 b d)))) (cbrt.f64 c)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) 2) (*.f64 d (/.f64 d b))) (cbrt.f64 c)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c d) d) b) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c d) 1) (/.f64 b d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c d) (sqrt.f64 d)) (/.f64 b (sqrt.f64 d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c d) (pow.f64 (cbrt.f64 d) 2)) (/.f64 b (cbrt.f64 d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c d) (neg.f64 d)) (neg.f64 b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c d) (/.f64 1 b)) (/.f64 1 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c d) (*.f64 1 (sqrt.f64 (/.f64 d b)))) (sqrt.f64 (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c d) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 b d)) 2))) (cbrt.f64 (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c d) (/.f64 d 1)) b) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c d) (/.f64 d (sqrt.f64 b))) (sqrt.f64 b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c d) (/.f64 d (pow.f64 (cbrt.f64 b) 2))) (cbrt.f64 b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c d) -1) (/.f64 b (neg.f64 d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) -1) (/.f64 b (*.f64 d d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) d) (/.f64 b (neg.f64 d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) 1) (/.f64 b (*.f64 d d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (sqrt.f64 d)) (/.f64 b (*.f64 d (sqrt.f64 d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (pow.f64 (cbrt.f64 d) 2)) (/.f64 b (*.f64 d (cbrt.f64 d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (*.f64 d d)) b) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (/.f64 d b)) (/.f64 1 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (neg.f64 d)) (/.f64 b (neg.f64 d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (/.f64 d 1)) (/.f64 b d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (/.f64 d (sqrt.f64 (/.f64 b d)))) (sqrt.f64 (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2))) (cbrt.f64 (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c 1) -1) (/.f64 b (*.f64 d (neg.f64 d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))) 1) (sqrt.f64 (/.f64 b (*.f64 d d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))) (sqrt.f64 d)) (sqrt.f64 (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))) (sqrt.f64 (neg.f64 d))) (sqrt.f64 (/.f64 b (neg.f64 d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) 1) (cbrt.f64 (/.f64 b (*.f64 d d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 d)) (cbrt.f64 (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 (neg.f64 d))) (cbrt.f64 (/.f64 b (neg.f64 d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (/.f64 (sqrt.f64 b) d)) (*.f64 (sqrt.f64 c) (/.f64 (sqrt.f64 b) d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b d)) (/.f64 (sqrt.f64 c) (sqrt.f64 d))) (*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 (sqrt.f64 c) (sqrt.f64 d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (/.f64 b d) (/.f64 c d)))) (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (*.f64 (/.f64 b d) (/.f64 c d)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (/.f64 b d) (/.f64 c d))) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))) (*.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (/.f64 b d) (/.f64 c d))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b) d) (sqrt.f64 c)) (*.f64 (/.f64 (sqrt.f64 b) d) (sqrt.f64 c))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (/.f64 b d) (/.f64 c d))) 3/2) (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 3/2)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 (/.f64 b d) (/.f64 c d)) 3) 1/6) (pow.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) 1/6)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 (/.f64 d (*.f64 c b)) d) -1/2) (pow.f64 (*.f64 (/.f64 d (*.f64 c b)) d) -1/2)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b d) (/.f64 c d)) 1) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b d) (/.f64 c d))) 2) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b d) (/.f64 c d))) 3) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b d) (/.f64 c d)) 3) 1/3) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c b)) d) -1) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) (/.f64 b (neg.f64 d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (*.f64 d (neg.f64 d))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (neg.f64 d)) (/.f64 c d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) (/.f64 b (neg.f64 d))) 1)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) (/.f64 b (neg.f64 d))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c) (*.f64 d (/.f64 d b)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b d) (/.f64 c d)) 2)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 c d)) (/.f64 b d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b d) (/.f64 c d))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b d) (/.f64 c d)) 3)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c 3) (pow.f64 (*.f64 d (/.f64 d b)) 3))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b d) (/.f64 c d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b d) (/.f64 c d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b d) (/.f64 c d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 d b)))) 1) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 d (/.f64 d b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 d (/.f64 d b)) 1) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 d b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) d)) (/.f64 1 (/.f64 (sqrt.f64 b) d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) d)) (neg.f64 (neg.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) (*.f64 (/.f64 (sqrt.f64 d) b) d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 d b))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 d b))) (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (/.f64 b d)) 2))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 d b))) 2) (cbrt.f64 (*.f64 d (/.f64 d b)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 d b))) 2) (neg.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 d b)))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) (*.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 d b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) 2) (*.f64 (cbrt.f64 d) (/.f64 d b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d b) d) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d b) (/.f64 d 1)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) (/.f64 d (neg.f64 b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 d (neg.f64 b)))) (neg.f64 (sqrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d (/.f64 d (neg.f64 b)))) (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b))))) (neg.f64 (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) (/.f64 d b)) (cbrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (/.f64 d b)) (pow.f64 (cbrt.f64 d) 2)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) (*.f64 d d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) (*.f64 (/.f64 d 1) d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d b))) (/.f64 d (sqrt.f64 (/.f64 b d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b d)) 2)) (/.f64 d (cbrt.f64 (/.f64 b d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d 1) (/.f64 d b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (sqrt.f64 b)) (/.f64 d (sqrt.f64 b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (pow.f64 (cbrt.f64 b) 2)) (/.f64 d (cbrt.f64 b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (*.f64 1 (sqrt.f64 (/.f64 d b)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 d 1) d) (/.f64 1 b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (cbrt.f64 (/.f64 b d))) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 b d)) 2))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b)) (*.f64 d (neg.f64 d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 d (neg.f64 b)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 1 (/.f64 (sqrt.f64 b) d))) (neg.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 d (/.f64 d b))) 2)) (neg.f64 (cbrt.f64 (*.f64 d (/.f64 d b))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (neg.f64 b)) (neg.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 1) (*.f64 (/.f64 (sqrt.f64 d) b) d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) b) (/.f64 (sqrt.f64 d) (/.f64 1 d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) 1) (*.f64 (/.f64 (cbrt.f64 d) b) d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (/.f64 1 d)) (/.f64 (sqrt.f64 d) b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 d) b) d) (sqrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 d) b) d) (/.f64 (sqrt.f64 d) 1)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (/.f64 (sqrt.f64 d) (cbrt.f64 (/.f64 b d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (cbrt.f64 (/.f64 b d))) (/.f64 (sqrt.f64 d) (pow.f64 (cbrt.f64 (/.f64 b d)) 2))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) b) (*.f64 (/.f64 (cbrt.f64 d) 1) d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 (cbrt.f64 d) 1) d) (/.f64 (pow.f64 (cbrt.f64 d) 2) b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 (cbrt.f64 d) b) d) (/.f64 (pow.f64 (cbrt.f64 d) 2) 1)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) (sqrt.f64 (/.f64 b d))) (/.f64 (cbrt.f64 d) (sqrt.f64 (/.f64 b d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (sqrt.f64 (/.f64 b d))) (/.f64 (pow.f64 (cbrt.f64 d) 2) (sqrt.f64 (/.f64 b d)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 (*.f64 d (/.f64 d b)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d -1) (/.f64 d (neg.f64 b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (/.f64 b 1)) d) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (/.f64 b (sqrt.f64 d))) (sqrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (/.f64 b (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d)) (/.f64 d b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (*.f64 d (sqrt.f64 d)))) (sqrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b d) (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))) (cbrt.f64 (*.f64 d (/.f64 d b)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) (/.f64 b d)) (cbrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d b) (/.f64 1 (sqrt.f64 d))) (sqrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d b) (/.f64 1 (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d b) -1) (neg.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) -1) (/.f64 d b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) 1) (/.f64 d b)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (sqrt.f64 b)) (/.f64 d (sqrt.f64 b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (pow.f64 (cbrt.f64 b) 2)) (/.f64 d (cbrt.f64 b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (neg.f64 b)) (neg.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (/.f64 b 1)) d) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (/.f64 b (sqrt.f64 d))) (sqrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (/.f64 b (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) -1) (/.f64 d (neg.f64 b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) 1) (sqrt.f64 (/.f64 d b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (sqrt.f64 b)) (sqrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (sqrt.f64 (neg.f64 b))) (sqrt.f64 (neg.f64 d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) 1) (cbrt.f64 (/.f64 d b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 b)) (cbrt.f64 d)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 (neg.f64 b))) (cbrt.f64 (neg.f64 d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 d (/.f64 d (neg.f64 b))))) (sqrt.f64 (*.f64 d (/.f64 d (neg.f64 b))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 d (/.f64 d (neg.f64 b)))) (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))))) (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (/.f64 1 (/.f64 (sqrt.f64 b) d)))) (/.f64 1 (/.f64 (sqrt.f64 b) d))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 d (/.f64 d b))) 2))) (cbrt.f64 (*.f64 d (/.f64 d b)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (/.f64 (sqrt.f64 d) (sqrt.f64 b))) (*.f64 (sqrt.f64 d) (/.f64 (sqrt.f64 d) (sqrt.f64 b)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d (/.f64 d b)))) (cbrt.f64 (*.f64 d (/.f64 d b)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 d (/.f64 d b)))) (cbrt.f64 (*.f64 d (/.f64 d b))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 1 (/.f64 (sqrt.f64 b) d))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))) (*.f64 (cbrt.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d (/.f64 d b))) (sqrt.f64 (cbrt.f64 (*.f64 d (/.f64 d b))))) (*.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) (sqrt.f64 (cbrt.f64 (*.f64 d (/.f64 d b)))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d (/.f64 d b))) 2)) (cbrt.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 d b))) 3/2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 3/2)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 d (/.f64 d b)) 3) 1/6) (pow.f64 (pow.f64 (*.f64 d (/.f64 d b)) 3) 1/6)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (/.f64 b (*.f64 d d)) -1/2) (pow.f64 (/.f64 b (*.f64 d d)) -1/2)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 d b)) 1) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 (sqrt.f64 b) d)) 2) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 d b))) 3) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 d b)) 3) 1/3) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d d)) -1) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 d (neg.f64 b)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 d (neg.f64 b))) 1)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 d b)) 2)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d) (/.f64 d b))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 d b))))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 d b)) 3)) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d 3) (pow.f64 (/.f64 b d) 3))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 d b)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 d b)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 d b)))) #(struct:egraph-query ((/.f64 c (/.f64 d (/.f64 b d))) (/.f64 d (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify210.0ms (1.6%)

Algorithm
egg-herbie
Rules
846×distribute-rgt-in
830×distribute-lft-in
810×associate-*r/
752×*-commutative
714×distribute-lft-neg-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
04926165
114435771
252305771
Stop Event
node limit
Counts
281 → 284
Calls
Call 1
Inputs
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(/.f64 (pow.f64 d 2) b)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) 1)
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 b d) (/.f64 c d))
(*.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 1)
(*.f64 1 (*.f64 (/.f64 b d) (/.f64 c d)))
(*.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))
(*.f64 (sqrt.f64 (/.f64 b d)) (*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 c d)))
(*.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) (/.f64 b (*.f64 d d))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2))
(*.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) (/.f64 (pow.f64 (cbrt.f64 c) 2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2) (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))
(*.f64 (cbrt.f64 (/.f64 b d)) (*.f64 (pow.f64 (cbrt.f64 (/.f64 b d)) 2) (/.f64 c d)))
(*.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) (/.f64 b (*.f64 d d))))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 (/.f64 1 d) (*.f64 c (/.f64 b d)))
(*.f64 (/.f64 1 d) (*.f64 b (/.f64 c d)))
(*.f64 (/.f64 b (*.f64 d d)) c)
(*.f64 (/.f64 b (*.f64 d d)) (/.f64 c 1))
(*.f64 (/.f64 b (neg.f64 d)) (/.f64 c (neg.f64 d)))
(*.f64 (neg.f64 c) (/.f64 b (*.f64 d (neg.f64 d))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 c d)) (sqrt.f64 (/.f64 b d)))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 b d)) 2) (/.f64 c d)) (cbrt.f64 (/.f64 b d)))
(*.f64 (*.f64 (sqrt.f64 c) (/.f64 b (*.f64 d d))) (sqrt.f64 c))
(*.f64 (*.f64 (cbrt.f64 c) (/.f64 b (*.f64 d d))) (pow.f64 (cbrt.f64 c) 2))
(*.f64 (/.f64 c 1) (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))) (/.f64 (sqrt.f64 b) d))
(*.f64 (*.f64 b (/.f64 c d)) (/.f64 1 d))
(*.f64 (/.f64 (sqrt.f64 b) d) (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (/.f64 c (cbrt.f64 (*.f64 d (/.f64 d b)))))
(*.f64 (/.f64 c (sqrt.f64 d)) (/.f64 b (*.f64 d (sqrt.f64 d))))
(*.f64 (/.f64 c (pow.f64 (cbrt.f64 d) 2)) (/.f64 b (*.f64 d (cbrt.f64 d))))
(*.f64 (/.f64 c (cbrt.f64 (*.f64 d (/.f64 d b)))) (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))
(*.f64 (/.f64 c (neg.f64 d)) (/.f64 b (neg.f64 d)))
(*.f64 (/.f64 -1 d) (*.f64 c (/.f64 b (neg.f64 d))))
(*.f64 (/.f64 (sqrt.f64 c) d) (*.f64 (/.f64 (sqrt.f64 c) d) b))
(*.f64 (*.f64 (/.f64 (sqrt.f64 c) d) b) (/.f64 (sqrt.f64 c) d))
(*.f64 (/.f64 (sqrt.f64 c) 1) (*.f64 (/.f64 (sqrt.f64 c) d) (/.f64 b d)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 c) d) (/.f64 b d)) (sqrt.f64 c))
(*.f64 (*.f64 (/.f64 (sqrt.f64 c) d) (/.f64 b d)) (/.f64 (sqrt.f64 c) 1))
(*.f64 (/.f64 (sqrt.f64 c) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (/.f64 (sqrt.f64 c) (cbrt.f64 (*.f64 d (/.f64 d b)))))
(*.f64 (/.f64 (sqrt.f64 c) (cbrt.f64 (*.f64 d (/.f64 d b)))) (/.f64 (sqrt.f64 c) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) d) (*.f64 (/.f64 (cbrt.f64 c) d) b))
(*.f64 (*.f64 (/.f64 (cbrt.f64 c) d) b) (/.f64 (pow.f64 (cbrt.f64 c) 2) d))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) 1) (*.f64 (/.f64 (cbrt.f64 c) d) (/.f64 b d)))
(*.f64 (*.f64 (/.f64 (cbrt.f64 c) d) (/.f64 b d)) (/.f64 (pow.f64 (cbrt.f64 c) 2) 1))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) (/.f64 1 (/.f64 (sqrt.f64 b) d))) (/.f64 (cbrt.f64 c) (/.f64 1 (/.f64 (sqrt.f64 b) d))))
(*.f64 (/.f64 (cbrt.f64 c) (/.f64 1 (/.f64 (sqrt.f64 b) d))) (/.f64 (pow.f64 (cbrt.f64 c) 2) (/.f64 1 (/.f64 (sqrt.f64 b) d))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))
(*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) d) b) (/.f64 (cbrt.f64 c) d))
(*.f64 (/.f64 (cbrt.f64 c) d) (*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) d) b))
(*.f64 (/.f64 b (*.f64 d (neg.f64 d))) (neg.f64 c))
(*.f64 (/.f64 c -1) (/.f64 b (*.f64 d (neg.f64 d))))
(*.f64 (/.f64 c (*.f64 d d)) b)
(*.f64 (/.f64 c (/.f64 d 1)) (/.f64 b d))
(*.f64 (/.f64 c (/.f64 d (sqrt.f64 (/.f64 b d)))) (sqrt.f64 (/.f64 b d)))
(*.f64 (/.f64 c (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2))) (cbrt.f64 (/.f64 b d)))
(*.f64 (/.f64 1 (/.f64 d (*.f64 (sqrt.f64 c) (/.f64 b d)))) (sqrt.f64 c))
(*.f64 (/.f64 1 (/.f64 d (*.f64 (pow.f64 (cbrt.f64 c) 2) (/.f64 b d)))) (cbrt.f64 c))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 d (/.f64 d b))) (cbrt.f64 c))
(*.f64 (/.f64 (/.f64 c d) d) b)
(*.f64 (/.f64 (/.f64 c d) 1) (/.f64 b d))
(*.f64 (/.f64 (/.f64 c d) (sqrt.f64 d)) (/.f64 b (sqrt.f64 d)))
(*.f64 (/.f64 (/.f64 c d) (pow.f64 (cbrt.f64 d) 2)) (/.f64 b (cbrt.f64 d)))
(*.f64 (/.f64 (/.f64 c d) (neg.f64 d)) (neg.f64 b))
(*.f64 (/.f64 (/.f64 c d) (/.f64 1 b)) (/.f64 1 d))
(*.f64 (/.f64 (/.f64 c d) (*.f64 1 (sqrt.f64 (/.f64 d b)))) (sqrt.f64 (/.f64 b d)))
(*.f64 (/.f64 (/.f64 c d) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 b d)) 2))) (cbrt.f64 (/.f64 b d)))
(*.f64 (/.f64 (/.f64 c d) (/.f64 d 1)) b)
(*.f64 (/.f64 (/.f64 c d) (/.f64 d (sqrt.f64 b))) (sqrt.f64 b))
(*.f64 (/.f64 (/.f64 c d) (/.f64 d (pow.f64 (cbrt.f64 b) 2))) (cbrt.f64 b))
(*.f64 (/.f64 (/.f64 c d) -1) (/.f64 b (neg.f64 d)))
(*.f64 (/.f64 (neg.f64 c) -1) (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (neg.f64 c) d) (/.f64 b (neg.f64 d)))
(*.f64 (/.f64 (/.f64 c 1) 1) (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c 1) (sqrt.f64 d)) (/.f64 b (*.f64 d (sqrt.f64 d))))
(*.f64 (/.f64 (/.f64 c 1) (pow.f64 (cbrt.f64 d) 2)) (/.f64 b (*.f64 d (cbrt.f64 d))))
(*.f64 (/.f64 (/.f64 c 1) (*.f64 d d)) b)
(*.f64 (/.f64 (/.f64 c 1) (/.f64 d b)) (/.f64 1 d))
(*.f64 (/.f64 (/.f64 c 1) (neg.f64 d)) (/.f64 b (neg.f64 d)))
(*.f64 (/.f64 (/.f64 c 1) (/.f64 d 1)) (/.f64 b d))
(*.f64 (/.f64 (/.f64 c 1) (/.f64 d (sqrt.f64 (/.f64 b d)))) (sqrt.f64 (/.f64 b d)))
(*.f64 (/.f64 (/.f64 c 1) (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2))) (cbrt.f64 (/.f64 b d)))
(*.f64 (/.f64 (/.f64 c 1) -1) (/.f64 b (*.f64 d (neg.f64 d))))
(*.f64 (/.f64 (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))) 1) (sqrt.f64 (/.f64 b (*.f64 d d))))
(*.f64 (/.f64 (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))) (sqrt.f64 d)) (sqrt.f64 (/.f64 b d)))
(*.f64 (/.f64 (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))) (sqrt.f64 (neg.f64 d))) (sqrt.f64 (/.f64 b (neg.f64 d))))
(*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) 1) (cbrt.f64 (/.f64 b (*.f64 d d))))
(*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 d)) (cbrt.f64 (/.f64 b d)))
(*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 (neg.f64 d))) (cbrt.f64 (/.f64 b (neg.f64 d))))
(*.f64 (*.f64 (sqrt.f64 c) (/.f64 (sqrt.f64 b) d)) (*.f64 (sqrt.f64 c) (/.f64 (sqrt.f64 b) d)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 (sqrt.f64 c) (sqrt.f64 d))) (*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 (sqrt.f64 c) (sqrt.f64 d))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))) (*.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))))
(*.f64 (*.f64 (/.f64 (sqrt.f64 b) d) (sqrt.f64 c)) (*.f64 (/.f64 (sqrt.f64 b) d) (sqrt.f64 c)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 3/2) (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 3/2))
(*.f64 (pow.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) 1/6) (pow.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) 1/6))
(*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c b)) d) -1/2) (pow.f64 (*.f64 (/.f64 d (*.f64 c b)) d) -1/2))
(pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 1)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) 1/3)
(pow.f64 (*.f64 (/.f64 d (*.f64 c b)) d) -1)
(neg.f64 (*.f64 (/.f64 c d) (/.f64 b (neg.f64 d))))
(neg.f64 (*.f64 c (/.f64 b (*.f64 d (neg.f64 d)))))
(neg.f64 (*.f64 (/.f64 b (neg.f64 d)) (/.f64 c d)))
(neg.f64 (*.f64 (*.f64 (/.f64 c d) (/.f64 b (neg.f64 d))) 1))
(neg.f64 (*.f64 1 (*.f64 (/.f64 c d) (/.f64 b (neg.f64 d)))))
(neg.f64 (/.f64 (neg.f64 c) (*.f64 d (/.f64 d b))))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2))
(log.f64 (pow.f64 (exp.f64 (/.f64 c d)) (/.f64 b d)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 b d) (/.f64 c d)))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3))
(cbrt.f64 (/.f64 (pow.f64 c 3) (pow.f64 (*.f64 d (/.f64 d b)) 3)))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 b d) (/.f64 c d))))
(exp.f64 (log.f64 (*.f64 (/.f64 b d) (/.f64 c d))))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 b d) (/.f64 c d))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d (/.f64 d b)))) 1)
(*.f64 d (/.f64 d b))
(*.f64 (*.f64 d (/.f64 d b)) 1)
(*.f64 1 (*.f64 d (/.f64 d b)))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)) (/.f64 1 (/.f64 (sqrt.f64 b) d)))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)) (neg.f64 (neg.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)))))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 (sqrt.f64 d) b) d))
(*.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))
(*.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2) (cbrt.f64 (*.f64 d (/.f64 d b))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2) (neg.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 d b))))))
(*.f64 (cbrt.f64 d) (*.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 d b)))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (cbrt.f64 d) (/.f64 d b)))
(*.f64 (/.f64 d b) d)
(*.f64 (/.f64 d b) (/.f64 d 1))
(*.f64 (neg.f64 d) (/.f64 d (neg.f64 b)))
(*.f64 (sqrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))) (neg.f64 (sqrt.f64 (*.f64 d (/.f64 d (neg.f64 b))))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))) (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b))))) (neg.f64 (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b))))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 d b)) (cbrt.f64 d))
(*.f64 (*.f64 (cbrt.f64 d) (/.f64 d b)) (pow.f64 (cbrt.f64 d) 2))
(*.f64 (/.f64 1 b) (*.f64 d d))
(*.f64 (/.f64 1 b) (*.f64 (/.f64 d 1) d))
(*.f64 (*.f64 1 (sqrt.f64 (/.f64 d b))) (/.f64 d (sqrt.f64 (/.f64 b d))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (/.f64 d (cbrt.f64 (/.f64 b d))))
(*.f64 (/.f64 d 1) (/.f64 d b))
(*.f64 (/.f64 d (sqrt.f64 b)) (/.f64 d (sqrt.f64 b)))
(*.f64 (/.f64 d (pow.f64 (cbrt.f64 b) 2)) (/.f64 d (cbrt.f64 b)))
(*.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (*.f64 1 (sqrt.f64 (/.f64 d b))))
(*.f64 (*.f64 (/.f64 d 1) d) (/.f64 1 b))
(*.f64 (/.f64 d (cbrt.f64 (/.f64 b d))) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 b d)) 2)))
(*.f64 (/.f64 1 (neg.f64 b)) (*.f64 d (neg.f64 d)))
(*.f64 -1 (*.f64 d (/.f64 d (neg.f64 b))))
(*.f64 (neg.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d))) (neg.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d))))
(*.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (neg.f64 (cbrt.f64 (*.f64 d (/.f64 d b)))))
(*.f64 (/.f64 d (neg.f64 b)) (neg.f64 d))
(*.f64 (/.f64 (sqrt.f64 d) 1) (*.f64 (/.f64 (sqrt.f64 d) b) d))
(*.f64 (/.f64 (sqrt.f64 d) b) (/.f64 (sqrt.f64 d) (/.f64 1 d)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) 1) (*.f64 (/.f64 (cbrt.f64 d) b) d))
(*.f64 (/.f64 (sqrt.f64 d) (/.f64 1 d)) (/.f64 (sqrt.f64 d) b))
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) b) d) (sqrt.f64 d))
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) b) d) (/.f64 (sqrt.f64 d) 1))
(*.f64 (/.f64 (sqrt.f64 d) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (/.f64 (sqrt.f64 d) (cbrt.f64 (/.f64 b d))))
(*.f64 (/.f64 (sqrt.f64 d) (cbrt.f64 (/.f64 b d))) (/.f64 (sqrt.f64 d) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) b) (*.f64 (/.f64 (cbrt.f64 d) 1) d))
(*.f64 (*.f64 (/.f64 (cbrt.f64 d) 1) d) (/.f64 (pow.f64 (cbrt.f64 d) 2) b))
(*.f64 (*.f64 (/.f64 (cbrt.f64 d) b) d) (/.f64 (pow.f64 (cbrt.f64 d) 2) 1))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (sqrt.f64 (/.f64 b d))) (/.f64 (cbrt.f64 d) (sqrt.f64 (/.f64 b d))))
(*.f64 (/.f64 (cbrt.f64 d) (sqrt.f64 (/.f64 b d))) (/.f64 (pow.f64 (cbrt.f64 d) 2) (sqrt.f64 (/.f64 b d))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 (*.f64 d (/.f64 d b))))
(*.f64 (/.f64 d -1) (/.f64 d (neg.f64 b)))
(*.f64 (/.f64 d (/.f64 b 1)) d)
(*.f64 (/.f64 d (/.f64 b (sqrt.f64 d))) (sqrt.f64 d))
(*.f64 (/.f64 d (/.f64 b (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d))
(*.f64 (/.f64 1 (/.f64 1 d)) (/.f64 d b))
(*.f64 (/.f64 1 (/.f64 b (*.f64 d (sqrt.f64 d)))) (sqrt.f64 d))
(*.f64 (/.f64 1 (/.f64 (/.f64 b d) (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d))
(*.f64 (/.f64 1 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))) (cbrt.f64 (*.f64 d (/.f64 d b))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 b d)) (cbrt.f64 d))
(*.f64 (/.f64 (/.f64 d b) (/.f64 1 (sqrt.f64 d))) (sqrt.f64 d))
(*.f64 (/.f64 (/.f64 d b) (/.f64 1 (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d))
(*.f64 (/.f64 (/.f64 d b) -1) (neg.f64 d))
(*.f64 (/.f64 (neg.f64 d) -1) (/.f64 d b))
(*.f64 (/.f64 (/.f64 d 1) 1) (/.f64 d b))
(*.f64 (/.f64 (/.f64 d 1) (sqrt.f64 b)) (/.f64 d (sqrt.f64 b)))
(*.f64 (/.f64 (/.f64 d 1) (pow.f64 (cbrt.f64 b) 2)) (/.f64 d (cbrt.f64 b)))
(*.f64 (/.f64 (/.f64 d 1) (neg.f64 b)) (neg.f64 d))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 b 1)) d)
(*.f64 (/.f64 (/.f64 d 1) (/.f64 b (sqrt.f64 d))) (sqrt.f64 d))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 b (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d))
(*.f64 (/.f64 (/.f64 d 1) -1) (/.f64 d (neg.f64 b)))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) 1) (sqrt.f64 (/.f64 d b)))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (sqrt.f64 b)) (sqrt.f64 d))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (sqrt.f64 (neg.f64 b))) (sqrt.f64 (neg.f64 d)))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) 1) (cbrt.f64 (/.f64 d b)))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 b)) (cbrt.f64 d))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 (neg.f64 b))) (cbrt.f64 (neg.f64 d)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 d (/.f64 d (neg.f64 b))))) (sqrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))))
(*.f64 (neg.f64 (*.f64 (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))) (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))))) (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))))
(*.f64 (neg.f64 (neg.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)))) (/.f64 1 (/.f64 (sqrt.f64 b) d)))
(*.f64 (neg.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))) (cbrt.f64 (*.f64 d (/.f64 d b))))
(*.f64 (*.f64 (sqrt.f64 d) (/.f64 (sqrt.f64 d) (sqrt.f64 b))) (*.f64 (sqrt.f64 d) (/.f64 (sqrt.f64 d) (sqrt.f64 b))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 d (/.f64 d b)))) (cbrt.f64 (*.f64 d (/.f64 d b)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 d (/.f64 d b)))) (cbrt.f64 (*.f64 d (/.f64 d b)))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))) (*.f64 (cbrt.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) (sqrt.f64 (cbrt.f64 (*.f64 d (/.f64 d b))))) (*.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) (sqrt.f64 (cbrt.f64 (*.f64 d (/.f64 d b))))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 3/2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 3/2))
(*.f64 (pow.f64 (pow.f64 (*.f64 d (/.f64 d b)) 3) 1/6) (pow.f64 (pow.f64 (*.f64 d (/.f64 d b)) 3) 1/6))
(*.f64 (pow.f64 (/.f64 b (*.f64 d d)) -1/2) (pow.f64 (/.f64 b (*.f64 d d)) -1/2))
(pow.f64 (*.f64 d (/.f64 d b)) 1)
(pow.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)) 2)
(pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 3)
(pow.f64 (pow.f64 (*.f64 d (/.f64 d b)) 3) 1/3)
(pow.f64 (/.f64 b (*.f64 d d)) -1)
(neg.f64 (*.f64 d (/.f64 d (neg.f64 b))))
(neg.f64 (/.f64 (*.f64 d (/.f64 d (neg.f64 b))) 1))
(sqrt.f64 (pow.f64 (*.f64 d (/.f64 d b)) 2))
(log.f64 (pow.f64 (exp.f64 d) (/.f64 d b)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d (/.f64 d b)))))
(cbrt.f64 (pow.f64 (*.f64 d (/.f64 d b)) 3))
(cbrt.f64 (/.f64 (pow.f64 d 3) (pow.f64 (/.f64 b d) 3)))
(expm1.f64 (log1p.f64 (*.f64 d (/.f64 d b))))
(exp.f64 (log.f64 (*.f64 d (/.f64 d b))))
(log1p.f64 (expm1.f64 (*.f64 d (/.f64 d b))))
Outputs
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(/.f64 (pow.f64 d 2) b)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) 1)
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 (/.f64 b d) (/.f64 c d))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 1)
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 1 (*.f64 (/.f64 b d) (/.f64 c d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (sqrt.f64 (/.f64 b d)) (*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 c d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) (/.f64 b (*.f64 d d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) (/.f64 (pow.f64 (cbrt.f64 c) 2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 (/.f64 b d) d))) (/.f64 (pow.f64 (cbrt.f64 c) 2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 b (*.f64 d d)))) (/.f64 (pow.f64 (cbrt.f64 c) 2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 b (*.f64 d d)))) (/.f64 (pow.f64 (cbrt.f64 c) 2) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 b d))) 2)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2) (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (cbrt.f64 (/.f64 b d)) (*.f64 (pow.f64 (cbrt.f64 (/.f64 b d)) 2) (/.f64 c d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) (/.f64 b (*.f64 d d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 1 d) (*.f64 c (/.f64 b d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 1 d) (*.f64 b (/.f64 c d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 b (*.f64 d d)) c)
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 b (*.f64 d d)) (/.f64 c 1))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 b (neg.f64 d)) (/.f64 c (neg.f64 d)))
(/.f64 (/.f64 (*.f64 c b) (neg.f64 d)) (neg.f64 d))
(/.f64 (*.f64 c b) (*.f64 (neg.f64 d) (neg.f64 d)))
(*.f64 (neg.f64 c) (/.f64 b (*.f64 d (neg.f64 d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 c d)) (sqrt.f64 (/.f64 b d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 b d)) 2) (/.f64 c d)) (cbrt.f64 (/.f64 b d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (*.f64 (sqrt.f64 c) (/.f64 b (*.f64 d d))) (sqrt.f64 c))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (*.f64 (cbrt.f64 c) (/.f64 b (*.f64 d d))) (pow.f64 (cbrt.f64 c) 2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 c 1) (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))) (/.f64 (sqrt.f64 b) d))
(*.f64 (/.f64 (sqrt.f64 b) d) (*.f64 c (/.f64 (sqrt.f64 b) d)))
(/.f64 c (pow.f64 (/.f64 d (sqrt.f64 b)) 2))
(*.f64 (*.f64 b (/.f64 c d)) (/.f64 1 d))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (sqrt.f64 b) d) (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))))
(*.f64 (/.f64 (sqrt.f64 b) d) (*.f64 c (/.f64 (sqrt.f64 b) d)))
(/.f64 c (pow.f64 (/.f64 d (sqrt.f64 b)) 2))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (/.f64 c (cbrt.f64 (*.f64 d (/.f64 d b)))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 c (sqrt.f64 d)) (/.f64 b (*.f64 d (sqrt.f64 d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 c (pow.f64 (cbrt.f64 d) 2)) (/.f64 b (*.f64 d (cbrt.f64 d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 c (cbrt.f64 (*.f64 d (/.f64 d b)))) (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 c (neg.f64 d)) (/.f64 b (neg.f64 d)))
(/.f64 (/.f64 (*.f64 c b) (neg.f64 d)) (neg.f64 d))
(*.f64 (/.f64 b (neg.f64 d)) (/.f64 c (neg.f64 d)))
(/.f64 (*.f64 c b) (*.f64 (neg.f64 d) (neg.f64 d)))
(*.f64 (/.f64 -1 d) (*.f64 c (/.f64 b (neg.f64 d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (sqrt.f64 c) d) (*.f64 (/.f64 (sqrt.f64 c) d) b))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 c) d) b) (/.f64 (sqrt.f64 c) d))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (sqrt.f64 c) 1) (*.f64 (/.f64 (sqrt.f64 c) d) (/.f64 b d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 c) d) (/.f64 b d)) (sqrt.f64 c))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 c) d) (/.f64 b d)) (/.f64 (sqrt.f64 c) 1))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (sqrt.f64 c) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (/.f64 (sqrt.f64 c) (cbrt.f64 (*.f64 d (/.f64 d b)))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (sqrt.f64 c) (cbrt.f64 (*.f64 d (/.f64 d b)))) (/.f64 (sqrt.f64 c) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) d) (*.f64 (/.f64 (cbrt.f64 c) d) b))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (*.f64 (/.f64 (cbrt.f64 c) d) b) (/.f64 (pow.f64 (cbrt.f64 c) 2) d))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) 1) (*.f64 (/.f64 (cbrt.f64 c) d) (/.f64 b d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (*.f64 (/.f64 (cbrt.f64 c) d) (/.f64 b d)) (/.f64 (pow.f64 (cbrt.f64 c) 2) 1))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) (/.f64 1 (/.f64 (sqrt.f64 b) d))) (/.f64 (cbrt.f64 c) (/.f64 1 (/.f64 (sqrt.f64 b) d))))
(*.f64 (/.f64 (sqrt.f64 b) d) (*.f64 c (/.f64 (sqrt.f64 b) d)))
(/.f64 c (pow.f64 (/.f64 d (sqrt.f64 b)) 2))
(*.f64 (/.f64 (cbrt.f64 c) (/.f64 1 (/.f64 (sqrt.f64 b) d))) (/.f64 (pow.f64 (cbrt.f64 c) 2) (/.f64 1 (/.f64 (sqrt.f64 b) d))))
(*.f64 (/.f64 (sqrt.f64 b) d) (*.f64 c (/.f64 (sqrt.f64 b) d)))
(/.f64 c (pow.f64 (/.f64 d (sqrt.f64 b)) 2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 (/.f64 b d) d))) (/.f64 (pow.f64 (cbrt.f64 c) 2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 b (*.f64 d d)))) (/.f64 (pow.f64 (cbrt.f64 c) 2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))
(*.f64 (cbrt.f64 (*.f64 c (/.f64 b (*.f64 d d)))) (/.f64 (pow.f64 (cbrt.f64 c) 2) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 b d))) 2)))
(*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) d) b) (/.f64 (cbrt.f64 c) d))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (cbrt.f64 c) d) (*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) d) b))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 b (*.f64 d (neg.f64 d))) (neg.f64 c))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 c -1) (/.f64 b (*.f64 d (neg.f64 d))))
(/.f64 (/.f64 (*.f64 c b) (neg.f64 d)) (neg.f64 d))
(*.f64 (/.f64 b (neg.f64 d)) (/.f64 c (neg.f64 d)))
(/.f64 (*.f64 c b) (*.f64 (neg.f64 d) (neg.f64 d)))
(*.f64 (/.f64 c (*.f64 d d)) b)
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 c (/.f64 d 1)) (/.f64 b d))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 c (/.f64 d (sqrt.f64 (/.f64 b d)))) (sqrt.f64 (/.f64 b d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 c (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2))) (cbrt.f64 (/.f64 b d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 1 (/.f64 d (*.f64 (sqrt.f64 c) (/.f64 b d)))) (sqrt.f64 c))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 1 (/.f64 d (*.f64 (pow.f64 (cbrt.f64 c) 2) (/.f64 b d)))) (cbrt.f64 c))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 d (/.f64 d b))) (cbrt.f64 c))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c d) d) b)
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c d) 1) (/.f64 b d))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c d) (sqrt.f64 d)) (/.f64 b (sqrt.f64 d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c d) (pow.f64 (cbrt.f64 d) 2)) (/.f64 b (cbrt.f64 d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c d) (neg.f64 d)) (neg.f64 b))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c d) (/.f64 1 b)) (/.f64 1 d))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c d) (*.f64 1 (sqrt.f64 (/.f64 d b)))) (sqrt.f64 (/.f64 b d)))
(*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 (/.f64 c d) (sqrt.f64 (/.f64 d b))))
(*.f64 (/.f64 c d) (/.f64 (sqrt.f64 (/.f64 b d)) (sqrt.f64 (/.f64 d b))))
(*.f64 (/.f64 (/.f64 c d) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 b d)) 2))) (cbrt.f64 (/.f64 b d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c d) (/.f64 d 1)) b)
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c d) (/.f64 d (sqrt.f64 b))) (sqrt.f64 b))
(*.f64 (/.f64 (sqrt.f64 b) d) (*.f64 c (/.f64 (sqrt.f64 b) d)))
(/.f64 c (pow.f64 (/.f64 d (sqrt.f64 b)) 2))
(*.f64 (/.f64 (/.f64 c d) (/.f64 d (pow.f64 (cbrt.f64 b) 2))) (cbrt.f64 b))
(*.f64 (cbrt.f64 b) (*.f64 (/.f64 (/.f64 c d) d) (pow.f64 (cbrt.f64 b) 2)))
(*.f64 (/.f64 c (*.f64 d d)) (*.f64 (pow.f64 (cbrt.f64 b) 2) (cbrt.f64 b)))
(*.f64 (/.f64 (/.f64 c d) -1) (/.f64 b (neg.f64 d)))
(/.f64 (/.f64 (*.f64 c b) (neg.f64 d)) (neg.f64 d))
(*.f64 (/.f64 b (neg.f64 d)) (/.f64 c (neg.f64 d)))
(/.f64 (*.f64 c b) (*.f64 (neg.f64 d) (neg.f64 d)))
(*.f64 (/.f64 (neg.f64 c) -1) (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (neg.f64 c) d) (/.f64 b (neg.f64 d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c 1) 1) (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c 1) (sqrt.f64 d)) (/.f64 b (*.f64 d (sqrt.f64 d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c 1) (pow.f64 (cbrt.f64 d) 2)) (/.f64 b (*.f64 d (cbrt.f64 d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c 1) (*.f64 d d)) b)
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c 1) (/.f64 d b)) (/.f64 1 d))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c 1) (neg.f64 d)) (/.f64 b (neg.f64 d)))
(/.f64 (/.f64 (*.f64 c b) (neg.f64 d)) (neg.f64 d))
(*.f64 (/.f64 b (neg.f64 d)) (/.f64 c (neg.f64 d)))
(/.f64 (*.f64 c b) (*.f64 (neg.f64 d) (neg.f64 d)))
(*.f64 (/.f64 (/.f64 c 1) (/.f64 d 1)) (/.f64 b d))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c 1) (/.f64 d (sqrt.f64 (/.f64 b d)))) (sqrt.f64 (/.f64 b d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c 1) (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2))) (cbrt.f64 (/.f64 b d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (/.f64 (/.f64 c 1) -1) (/.f64 b (*.f64 d (neg.f64 d))))
(/.f64 (/.f64 (*.f64 c b) (neg.f64 d)) (neg.f64 d))
(*.f64 (/.f64 b (neg.f64 d)) (/.f64 c (neg.f64 d)))
(/.f64 (*.f64 c b) (*.f64 (neg.f64 d) (neg.f64 d)))
(*.f64 (/.f64 (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))) 1) (sqrt.f64 (/.f64 b (*.f64 d d))))
(*.f64 (*.f64 c (/.f64 (sqrt.f64 b) d)) (sqrt.f64 (/.f64 (/.f64 b d) d)))
(*.f64 c (*.f64 (/.f64 (sqrt.f64 b) d) (sqrt.f64 (/.f64 b (*.f64 d d)))))
(*.f64 (/.f64 (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))) (sqrt.f64 d)) (sqrt.f64 (/.f64 b d)))
(*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 (*.f64 c (/.f64 (sqrt.f64 b) d)) (sqrt.f64 d)))
(/.f64 (*.f64 c (sqrt.f64 (/.f64 b d))) (/.f64 (*.f64 d (sqrt.f64 d)) (sqrt.f64 b)))
(*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 (/.f64 c (sqrt.f64 d)) (/.f64 d (sqrt.f64 b))))
(*.f64 (/.f64 (/.f64 c (/.f64 1 (/.f64 (sqrt.f64 b) d))) (sqrt.f64 (neg.f64 d))) (sqrt.f64 (/.f64 b (neg.f64 d))))
(*.f64 (/.f64 (*.f64 c (/.f64 (sqrt.f64 b) d)) (sqrt.f64 (neg.f64 d))) (sqrt.f64 (/.f64 b (neg.f64 d))))
(/.f64 (*.f64 (sqrt.f64 (/.f64 b (neg.f64 d))) c) (*.f64 (/.f64 d (sqrt.f64 b)) (sqrt.f64 (neg.f64 d))))
(*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) 1) (cbrt.f64 (/.f64 b (*.f64 d d))))
(*.f64 (/.f64 c (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 (/.f64 (/.f64 b d) d)))
(/.f64 (*.f64 (cbrt.f64 (/.f64 b (*.f64 d d))) c) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))
(/.f64 (*.f64 (cbrt.f64 (/.f64 b (*.f64 d d))) c) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 b d))) 2))
(*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 d)) (cbrt.f64 (/.f64 b d)))
(*.f64 (cbrt.f64 (/.f64 b d)) (/.f64 c (*.f64 (cbrt.f64 d) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))))
(*.f64 (cbrt.f64 (/.f64 b d)) (/.f64 c (*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2) (cbrt.f64 d))))
(*.f64 (cbrt.f64 (/.f64 b d)) (/.f64 (/.f64 c (cbrt.f64 d)) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 b d))) 2)))
(*.f64 (/.f64 (/.f64 c (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 (neg.f64 d))) (cbrt.f64 (/.f64 b (neg.f64 d))))
(*.f64 (/.f64 c (*.f64 (cbrt.f64 (neg.f64 d)) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))) (cbrt.f64 (/.f64 b (neg.f64 d))))
(*.f64 (/.f64 (/.f64 c (cbrt.f64 (neg.f64 d))) (pow.f64 (cbrt.f64 (/.f64 d (/.f64 b d))) 2)) (cbrt.f64 (/.f64 b (neg.f64 d))))
(*.f64 (*.f64 (sqrt.f64 c) (/.f64 (sqrt.f64 b) d)) (*.f64 (sqrt.f64 c) (/.f64 (sqrt.f64 b) d)))
(*.f64 (/.f64 (sqrt.f64 b) d) (*.f64 c (/.f64 (sqrt.f64 b) d)))
(/.f64 c (pow.f64 (/.f64 d (sqrt.f64 b)) 2))
(*.f64 (*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 (sqrt.f64 c) (sqrt.f64 d))) (*.f64 (sqrt.f64 (/.f64 b d)) (/.f64 (sqrt.f64 c) (sqrt.f64 d))))
(*.f64 (/.f64 b d) (*.f64 (/.f64 (sqrt.f64 c) (sqrt.f64 d)) (/.f64 (sqrt.f64 c) (sqrt.f64 d))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 c (/.f64 (/.f64 b d) d)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 (/.f64 b d) d))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 c (/.f64 (/.f64 b d) d)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 (/.f64 b d) d))) 2))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (*.f64 d d)))) 2) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 c (/.f64 b (*.f64 d d))))) (cbrt.f64 (sqrt.f64 (*.f64 c (/.f64 b (*.f64 d d)))))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))) (*.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 c (/.f64 (/.f64 b d) d)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 (/.f64 b d) d))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 c (/.f64 (/.f64 b d) d)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 (/.f64 b d) d))) 2))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 b (*.f64 d d)))) 2) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 c (/.f64 b (*.f64 d d))))) (cbrt.f64 (sqrt.f64 (*.f64 c (/.f64 b (*.f64 d d)))))))
(*.f64 (*.f64 (/.f64 (sqrt.f64 b) d) (sqrt.f64 c)) (*.f64 (/.f64 (sqrt.f64 b) d) (sqrt.f64 c)))
(*.f64 (/.f64 (sqrt.f64 b) d) (*.f64 c (/.f64 (sqrt.f64 b) d)))
(/.f64 c (pow.f64 (/.f64 d (sqrt.f64 b)) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 3/2) (pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 3/2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (pow.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) 1/6) (pow.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) 1/6))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c b)) d) -1/2) (pow.f64 (*.f64 (/.f64 d (*.f64 c b)) d) -1/2))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 1)
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(pow.f64 (sqrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 2)
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 b d) (/.f64 c d))) 3)
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(pow.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3) 1/3)
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(pow.f64 (*.f64 (/.f64 d (*.f64 c b)) d) -1)
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(neg.f64 (*.f64 (/.f64 c d) (/.f64 b (neg.f64 d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(neg.f64 (*.f64 c (/.f64 b (*.f64 d (neg.f64 d)))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(neg.f64 (*.f64 (/.f64 b (neg.f64 d)) (/.f64 c d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(neg.f64 (*.f64 (*.f64 (/.f64 c d) (/.f64 b (neg.f64 d))) 1))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(neg.f64 (*.f64 1 (*.f64 (/.f64 c d) (/.f64 b (neg.f64 d)))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(neg.f64 (/.f64 (neg.f64 c) (*.f64 d (/.f64 d b))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 2))
(sqrt.f64 (pow.f64 (*.f64 c (/.f64 (/.f64 b d) d)) 2))
(fabs.f64 (*.f64 c (/.f64 b (*.f64 d d))))
(log.f64 (pow.f64 (exp.f64 (/.f64 c d)) (/.f64 b d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 b d) (/.f64 c d)))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 b d) (/.f64 c d)) 3))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(cbrt.f64 (/.f64 (pow.f64 c 3) (pow.f64 (*.f64 d (/.f64 d b)) 3)))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 b d) (/.f64 c d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(exp.f64 (log.f64 (*.f64 (/.f64 b d) (/.f64 c d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 b d) (/.f64 c d))))
(*.f64 c (/.f64 (/.f64 b d) d))
(*.f64 c (/.f64 b (*.f64 d d)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d (/.f64 d b)))) 1)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (*.f64 d (/.f64 d b)) 1)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 1 (*.f64 d (/.f64 d b)))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)) (/.f64 1 (/.f64 (sqrt.f64 b) d)))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 b)) d) 2)
(pow.f64 (/.f64 d (sqrt.f64 b)) 2)
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)) (neg.f64 (neg.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)))))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 b)) d) 2)
(pow.f64 (/.f64 d (sqrt.f64 b)) 2)
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 (sqrt.f64 d) b) d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)))
(*.f64 (cbrt.f64 (/.f64 d (/.f64 b d))) (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2) (cbrt.f64 (*.f64 d (/.f64 d b))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2) (neg.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 d b))))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (cbrt.f64 d) (*.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 d b)))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (cbrt.f64 d) (/.f64 d b)))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 d b) d)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 d b) (/.f64 d 1))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (neg.f64 d) (/.f64 d (neg.f64 b)))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (sqrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))) (neg.f64 (sqrt.f64 (*.f64 d (/.f64 d (neg.f64 b))))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (*.f64 (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))) (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b))))) (neg.f64 (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b))))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 d b)) (cbrt.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (*.f64 (cbrt.f64 d) (/.f64 d b)) (pow.f64 (cbrt.f64 d) 2))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 1 b) (*.f64 d d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 1 b) (*.f64 (/.f64 d 1) d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (*.f64 1 (sqrt.f64 (/.f64 d b))) (/.f64 d (sqrt.f64 (/.f64 b d))))
(*.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (sqrt.f64 (/.f64 d b)))
(/.f64 d (/.f64 (sqrt.f64 (/.f64 b d)) (sqrt.f64 (/.f64 d b))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (/.f64 d (cbrt.f64 (/.f64 b d))))
(/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 (/.f64 b d)))
(/.f64 (/.f64 d (cbrt.f64 (/.f64 b d))) (pow.f64 (cbrt.f64 (/.f64 b d)) 2))
(*.f64 (/.f64 d 1) (/.f64 d b))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 d (sqrt.f64 b)) (/.f64 d (sqrt.f64 b)))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 b)) d) 2)
(pow.f64 (/.f64 d (sqrt.f64 b)) 2)
(*.f64 (/.f64 d (pow.f64 (cbrt.f64 b) 2)) (/.f64 d (cbrt.f64 b)))
(/.f64 d (/.f64 (pow.f64 (cbrt.f64 b) 2) (/.f64 d (cbrt.f64 b))))
(*.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (*.f64 1 (sqrt.f64 (/.f64 d b))))
(*.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (sqrt.f64 (/.f64 d b)))
(/.f64 d (/.f64 (sqrt.f64 (/.f64 b d)) (sqrt.f64 (/.f64 d b))))
(*.f64 (*.f64 (/.f64 d 1) d) (/.f64 1 b))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 d (cbrt.f64 (/.f64 b d))) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 b d)) 2)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (/.f64 d (cbrt.f64 (/.f64 b d))))
(/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 (/.f64 b d)))
(/.f64 (/.f64 d (cbrt.f64 (/.f64 b d))) (pow.f64 (cbrt.f64 (/.f64 b d)) 2))
(*.f64 (/.f64 1 (neg.f64 b)) (*.f64 d (neg.f64 d)))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 -1 (*.f64 d (/.f64 d (neg.f64 b))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (neg.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d))) (neg.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d))))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 b)) d) 2)
(pow.f64 (/.f64 d (sqrt.f64 b)) 2)
(*.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (neg.f64 (cbrt.f64 (*.f64 d (/.f64 d b)))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 d (neg.f64 b)) (neg.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (sqrt.f64 d) 1) (*.f64 (/.f64 (sqrt.f64 d) b) d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (sqrt.f64 d) b) (/.f64 (sqrt.f64 d) (/.f64 1 d)))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) 1) (*.f64 (/.f64 (cbrt.f64 d) b) d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (sqrt.f64 d) (/.f64 1 d)) (/.f64 (sqrt.f64 d) b))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) b) d) (sqrt.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) b) d) (/.f64 (sqrt.f64 d) 1))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (sqrt.f64 d) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (/.f64 (sqrt.f64 d) (cbrt.f64 (/.f64 b d))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (/.f64 d (cbrt.f64 (/.f64 b d))))
(/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 (/.f64 b d)))
(/.f64 (/.f64 d (cbrt.f64 (/.f64 b d))) (pow.f64 (cbrt.f64 (/.f64 b d)) 2))
(*.f64 (/.f64 (sqrt.f64 d) (cbrt.f64 (/.f64 b d))) (/.f64 (sqrt.f64 d) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (/.f64 d (cbrt.f64 (/.f64 b d))))
(/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 (/.f64 b d)))
(/.f64 (/.f64 d (cbrt.f64 (/.f64 b d))) (pow.f64 (cbrt.f64 (/.f64 b d)) 2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) b) (*.f64 (/.f64 (cbrt.f64 d) 1) d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (*.f64 (/.f64 (cbrt.f64 d) 1) d) (/.f64 (pow.f64 (cbrt.f64 d) 2) b))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (*.f64 (/.f64 (cbrt.f64 d) b) d) (/.f64 (pow.f64 (cbrt.f64 d) 2) 1))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (sqrt.f64 (/.f64 b d))) (/.f64 (cbrt.f64 d) (sqrt.f64 (/.f64 b d))))
(/.f64 (*.f64 (cbrt.f64 d) (/.f64 (pow.f64 (cbrt.f64 d) 2) (sqrt.f64 (/.f64 b d)))) (sqrt.f64 (/.f64 b d)))
(/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (sqrt.f64 (/.f64 b d)))
(*.f64 (/.f64 (cbrt.f64 d) (sqrt.f64 (/.f64 b d))) (/.f64 (pow.f64 (cbrt.f64 d) 2) (sqrt.f64 (/.f64 b d))))
(/.f64 (*.f64 (cbrt.f64 d) (/.f64 (pow.f64 (cbrt.f64 d) 2) (sqrt.f64 (/.f64 b d)))) (sqrt.f64 (/.f64 b d)))
(/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (sqrt.f64 (/.f64 b d)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 (*.f64 d (/.f64 d b))))
(*.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)))
(*.f64 (cbrt.f64 (/.f64 d (/.f64 b d))) (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)))
(*.f64 (/.f64 d -1) (/.f64 d (neg.f64 b)))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 d (/.f64 b 1)) d)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 d (/.f64 b (sqrt.f64 d))) (sqrt.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 d (/.f64 b (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 1 (/.f64 1 d)) (/.f64 d b))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 1 (/.f64 b (*.f64 d (sqrt.f64 d)))) (sqrt.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 1 (/.f64 (/.f64 b d) (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 1 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))) (cbrt.f64 (*.f64 d (/.f64 d b))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 b d)) (cbrt.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (/.f64 d b) (/.f64 1 (sqrt.f64 d))) (sqrt.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (/.f64 d b) (/.f64 1 (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (/.f64 d b) -1) (neg.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (neg.f64 d) -1) (/.f64 d b))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (/.f64 d 1) 1) (/.f64 d b))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (/.f64 d 1) (sqrt.f64 b)) (/.f64 d (sqrt.f64 b)))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 b)) d) 2)
(pow.f64 (/.f64 d (sqrt.f64 b)) 2)
(*.f64 (/.f64 (/.f64 d 1) (pow.f64 (cbrt.f64 b) 2)) (/.f64 d (cbrt.f64 b)))
(*.f64 (/.f64 d (pow.f64 (cbrt.f64 b) 2)) (/.f64 d (cbrt.f64 b)))
(/.f64 d (/.f64 (pow.f64 (cbrt.f64 b) 2) (/.f64 d (cbrt.f64 b))))
(*.f64 (/.f64 (/.f64 d 1) (neg.f64 b)) (neg.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 b 1)) d)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 b (sqrt.f64 d))) (sqrt.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 b (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (/.f64 d 1) -1) (/.f64 d (neg.f64 b)))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) 1) (sqrt.f64 (/.f64 d b)))
(*.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (sqrt.f64 (/.f64 d b)))
(/.f64 d (/.f64 (sqrt.f64 (/.f64 b d)) (sqrt.f64 (/.f64 d b))))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (sqrt.f64 b)) (sqrt.f64 d))
(*.f64 (sqrt.f64 d) (/.f64 d (*.f64 (sqrt.f64 b) (sqrt.f64 (/.f64 b d)))))
(/.f64 (/.f64 (*.f64 d (sqrt.f64 d)) (sqrt.f64 (/.f64 b d))) (sqrt.f64 b))
(*.f64 (sqrt.f64 d) (/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (sqrt.f64 b)))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (sqrt.f64 (neg.f64 b))) (sqrt.f64 (neg.f64 d)))
(*.f64 (sqrt.f64 (neg.f64 d)) (/.f64 d (*.f64 (sqrt.f64 (neg.f64 b)) (sqrt.f64 (/.f64 b d)))))
(/.f64 (*.f64 (sqrt.f64 (neg.f64 d)) d) (*.f64 (sqrt.f64 (/.f64 b d)) (sqrt.f64 (neg.f64 b))))
(/.f64 (/.f64 d (sqrt.f64 (/.f64 b d))) (/.f64 (sqrt.f64 (neg.f64 b)) (sqrt.f64 (neg.f64 d))))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) 1) (cbrt.f64 (/.f64 d b)))
(*.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 (/.f64 d b)))
(/.f64 (*.f64 (cbrt.f64 (/.f64 d b)) d) (pow.f64 (cbrt.f64 (/.f64 b d)) 2))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 b)) (cbrt.f64 d))
(/.f64 (*.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 d)) (cbrt.f64 b))
(*.f64 (cbrt.f64 d) (/.f64 (/.f64 d (cbrt.f64 b)) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (cbrt.f64 (neg.f64 b))) (cbrt.f64 (neg.f64 d)))
(*.f64 (cbrt.f64 (neg.f64 d)) (/.f64 d (*.f64 (cbrt.f64 (neg.f64 b)) (pow.f64 (cbrt.f64 (/.f64 b d)) 2))))
(*.f64 (cbrt.f64 (neg.f64 d)) (/.f64 (/.f64 d (cbrt.f64 (neg.f64 b))) (pow.f64 (cbrt.f64 (/.f64 b d)) 2)))
(/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 b d)) 2)) (/.f64 (cbrt.f64 (neg.f64 b)) (cbrt.f64 (neg.f64 d))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 d (/.f64 d (neg.f64 b))))) (sqrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (neg.f64 (*.f64 (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))) (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))))) (cbrt.f64 (*.f64 d (/.f64 d (neg.f64 b)))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (neg.f64 (neg.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)))) (/.f64 1 (/.f64 (sqrt.f64 b) d)))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 b)) d) 2)
(pow.f64 (/.f64 d (sqrt.f64 b)) 2)
(*.f64 (neg.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))) (cbrt.f64 (*.f64 d (/.f64 d b))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (*.f64 (sqrt.f64 d) (/.f64 (sqrt.f64 d) (sqrt.f64 b))) (*.f64 (sqrt.f64 d) (/.f64 (sqrt.f64 d) (sqrt.f64 b))))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 b)) d) 2)
(pow.f64 (/.f64 d (sqrt.f64 b)) 2)
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 d (/.f64 d b)))) (cbrt.f64 (*.f64 d (/.f64 d b)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 d (/.f64 d b)))) (cbrt.f64 (*.f64 d (/.f64 d b)))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (*.f64 (cbrt.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))) (*.f64 (cbrt.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 1 (sqrt.f64 b)) d)) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (*.f64 (cbrt.f64 (*.f64 (/.f64 1 (sqrt.f64 b)) d)) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2) (*.f64 (cbrt.f64 (/.f64 d (sqrt.f64 b))) (cbrt.f64 (/.f64 d (sqrt.f64 b)))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 d (/.f64 b d))) 2) (*.f64 (cbrt.f64 (/.f64 d (sqrt.f64 b))) (cbrt.f64 (/.f64 d (sqrt.f64 b)))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) (sqrt.f64 (cbrt.f64 (*.f64 d (/.f64 d b))))) (*.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) (sqrt.f64 (cbrt.f64 (*.f64 d (/.f64 d b))))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (cbrt.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 1 (sqrt.f64 b)) d)) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)) (*.f64 (cbrt.f64 (*.f64 (/.f64 1 (sqrt.f64 b)) d)) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 2) (*.f64 (cbrt.f64 (/.f64 d (sqrt.f64 b))) (cbrt.f64 (/.f64 d (sqrt.f64 b)))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 d (/.f64 b d))) 2) (*.f64 (cbrt.f64 (/.f64 d (sqrt.f64 b))) (cbrt.f64 (/.f64 d (sqrt.f64 b)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 3/2) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 3/2))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (pow.f64 (pow.f64 (*.f64 d (/.f64 d b)) 3) 1/6) (pow.f64 (pow.f64 (*.f64 d (/.f64 d b)) 3) 1/6))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(*.f64 (pow.f64 (/.f64 b (*.f64 d d)) -1/2) (pow.f64 (/.f64 b (*.f64 d d)) -1/2))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(pow.f64 (*.f64 d (/.f64 d b)) 1)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(pow.f64 (/.f64 1 (/.f64 (sqrt.f64 b) d)) 2)
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 b)) d) 2)
(pow.f64 (/.f64 d (sqrt.f64 b)) 2)
(pow.f64 (cbrt.f64 (*.f64 d (/.f64 d b))) 3)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(pow.f64 (pow.f64 (*.f64 d (/.f64 d b)) 3) 1/3)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(pow.f64 (/.f64 b (*.f64 d d)) -1)
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(neg.f64 (*.f64 d (/.f64 d (neg.f64 b))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(neg.f64 (/.f64 (*.f64 d (/.f64 d (neg.f64 b))) 1))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(sqrt.f64 (pow.f64 (*.f64 d (/.f64 d b)) 2))
(fabs.f64 (*.f64 d (/.f64 d b)))
(fabs.f64 (/.f64 d (/.f64 b d)))
(log.f64 (pow.f64 (exp.f64 d) (/.f64 d b)))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d (/.f64 d b)))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(cbrt.f64 (pow.f64 (*.f64 d (/.f64 d b)) 3))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(cbrt.f64 (/.f64 (pow.f64 d 3) (pow.f64 (/.f64 b d) 3)))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(expm1.f64 (log1p.f64 (*.f64 d (/.f64 d b))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(exp.f64 (log.f64 (*.f64 d (/.f64 d b))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))
(log1p.f64 (expm1.f64 (*.f64 d (/.f64 d b))))
(*.f64 d (/.f64 d b))
(/.f64 d (/.f64 b d))

localize15.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
97.8%
(*.f64 (/.f64 d c) (/.f64 a c))
96.6%
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
Compiler

Compiled 35 to 9 computations (74.3% saved)

series24.0ms (0.2%)

Counts
2 → 84
Calls

21 calls:

TimeVariablePointExpression
11.0ms
b
@0
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
7.0ms
a
@inf
(*.f64 (/.f64 d c) (/.f64 a c))
0.0ms
a
@0
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
0.0ms
d
@0
(*.f64 (/.f64 d c) (/.f64 a c))
0.0ms
d
@0
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))

rewrite185.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
626×distribute-lft-neg-in
580×distribute-rgt-neg-in
572×associate-/r/
556×distribute-rgt-in
518×distribute-lft-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01150
125144
2384644
Stop Event
node limit
Counts
2 → 171
Calls
Call 1
Inputs
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
(*.f64 (/.f64 d c) (/.f64 a c))
Outputs
(((+.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) 1)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) 1)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) 1)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) 1)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) 1)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (/.f64 b c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (/.f64 b c) (exp.f64 (log1p.f64 (*.f64 (/.f64 d (*.f64 c c)) a)))) 1) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) 1) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b (/.f64 d (/.f64 c a))) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b (/.f64 d (/.f64 c a))) c)) (sqrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 b (/.f64 d (/.f64 c a))) c)) (pow.f64 (cbrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) 2)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 b (/.f64 d (/.f64 c a))) c)) 2) (cbrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (/.f64 1 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (-.f64 b (/.f64 d (/.f64 c a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (+.f64 b (*.f64 d (neg.f64 (/.f64 a c))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (+.f64 (*.f64 d (neg.f64 (/.f64 a c))) b)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c)) (/.f64 (sqrt.f64 (*.f64 d a)) c)) (-.f64 (sqrt.f64 (/.f64 b c)) (/.f64 (sqrt.f64 (*.f64 d a)) c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))) (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))) (+.f64 (pow.f64 (/.f64 b c) 2) (-.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2) (/.f64 (*.f64 b (*.f64 d a)) (pow.f64 c 3))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 b c) (*.f64 c (/.f64 d (/.f64 c a))))) (*.f64 c c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 b (*.f64 c c)) (*.f64 c (*.f64 d a)))) (pow.f64 c 3)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 c (*.f64 (/.f64 c b) (/.f64 d (/.f64 c a))))) (*.f64 (/.f64 c b) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 c c) (*.f64 (/.f64 c b) (*.f64 d a)))) (*.f64 (/.f64 c b) (*.f64 c c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 (neg.f64 b) c) (*.f64 (neg.f64 c) (/.f64 d (/.f64 c a))))) (*.f64 c (neg.f64 c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 (neg.f64 b) (*.f64 c c)) (*.f64 (neg.f64 c) (*.f64 d a)))) (neg.f64 (pow.f64 c 3))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))) (-.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) (-.f64 (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) (pow.f64 (/.f64 b c) 2))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 1 c) (+.f64 b (/.f64 d (/.f64 c a)))) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))) (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (/.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))) (*.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))) (+.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 3)) (-.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (neg.f64 (/.f64 (*.f64 b (*.f64 d a)) (pow.f64 c 3))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3) 3)) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (/.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2) 3)) (*.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2) (+.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 b c) (*.f64 c (/.f64 d (/.f64 c a)))) (*.f64 c c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 b (*.f64 c c)) (*.f64 c (*.f64 d a))) (pow.f64 c 3)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 c (*.f64 (/.f64 c b) (/.f64 d (/.f64 c a)))) (*.f64 (/.f64 c b) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 c c) (*.f64 (/.f64 c b) (*.f64 d a))) (*.f64 (/.f64 c b) (*.f64 c c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b) c) (*.f64 (neg.f64 c) (/.f64 d (/.f64 c a)))) (*.f64 c (neg.f64 c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b) (*.f64 c c)) (*.f64 (neg.f64 c) (*.f64 d a))) (neg.f64 (pow.f64 c 3))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2)) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (neg.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3)) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (neg.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 d (/.f64 c a))) c) 1) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 d (/.f64 c a))) c)) 2) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 d (/.f64 c a))) c)) 3) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 d (/.f64 c a))) c) 3) 1/3) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (neg.f64 c)) (*.f64 (/.f64 d (*.f64 c c)) a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c c)) a) (/.f64 b (neg.f64 c)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (neg.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (neg.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 d (/.f64 c a))) c) 2)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 d (/.f64 c a))) c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 d (/.f64 c a))) c)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 d (/.f64 c a))) c) 3)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 d (/.f64 c a))) c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 d (/.f64 c a))) c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 d (/.f64 c a))) c)) 1)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 d (/.f64 c a))) c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 1 c) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c)) (sqrt.f64 (/.f64 b c)) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c)) 2) (cbrt.f64 (/.f64 b c)) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (*.f64 c c)) a))) 1) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 d (/.f64 (*.f64 c c) a)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 d (*.f64 c (/.f64 c a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 d (*.f64 (/.f64 c a) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 d c) (/.f64 c a)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 a (*.f64 c (/.f64 c d))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 a (*.f64 (/.f64 c d) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 a c) (/.f64 c d)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c a) (/.f64 c d))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c c) (*.f64 d a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a) (*.f64 (/.f64 c d) (/.f64 c (sqrt.f64 a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) (*.f64 (/.f64 c a) (/.f64 c (sqrt.f64 d)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a) 2) (*.f64 (/.f64 c d) (/.f64 c (cbrt.f64 a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) 2) (*.f64 (/.f64 c a) (/.f64 c (cbrt.f64 d)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 d (/.f64 c a)) c) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 d a) (*.f64 c c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a) (*.f64 (/.f64 c d) (neg.f64 c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a) (*.f64 (neg.f64 c) (/.f64 c d))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) (*.f64 (/.f64 c a) (neg.f64 c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) (*.f64 (neg.f64 c) (/.f64 c a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 d (neg.f64 a)) (*.f64 c (neg.f64 c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 a 1) (*.f64 (/.f64 c d) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 a (sqrt.f64 c)) (*.f64 (/.f64 c d) (sqrt.f64 c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 a (pow.f64 (cbrt.f64 c) 2)) (*.f64 (/.f64 c d) (cbrt.f64 c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 d (*.f64 (sqrt.f64 c) (/.f64 c a))) (sqrt.f64 c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 d (*.f64 (pow.f64 (cbrt.f64 c) 2) (/.f64 c a))) (cbrt.f64 c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 d 1) (*.f64 (/.f64 c a) c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 d (sqrt.f64 c)) (*.f64 (/.f64 c a) (sqrt.f64 c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 d (pow.f64 (cbrt.f64 c) 2)) (*.f64 (/.f64 c a) (cbrt.f64 c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c a) (neg.f64 (/.f64 c d)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) (neg.f64 (/.f64 c a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 d (neg.f64 (/.f64 a c))) (neg.f64 c)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a) (neg.f64 d)) (*.f64 (neg.f64 c) (neg.f64 c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c c)) a) 1) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d a)) c) 2) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c c)) a)) 3) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c c)) a) 3) 1/3) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 (/.f64 c a) (neg.f64 c)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (neg.f64 c)) (/.f64 d c))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d c) (/.f64 a (neg.f64 c)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (neg.f64 c)) (/.f64 c d))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 (/.f64 c d) (neg.f64 c)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d a) (*.f64 c (neg.f64 c)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c c)) a) 2)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c c)) a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c c)) a)))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c c)) a) 3)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c c)) a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c c)) a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c c)) a)) 1)) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (*.f64 c c)) a))) #(struct:egraph-query ((-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c))) (*.f64 (/.f64 d c) (/.f64 a c))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify202.0ms (1.5%)

Algorithm
egg-herbie
Rules
1750×associate-+r+
958×+-commutative
848×fma-def
604×associate-*r*
506×associate-*l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
044813397
1130011955
2657211859
Stop Event
node limit
Counts
255 → 289
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(+.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))
(+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) 1))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) 1))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) 1))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) 1))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) 1))
(+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (/.f64 b c))
(+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(+.f64 (-.f64 (/.f64 b c) (exp.f64 (log1p.f64 (*.f64 (/.f64 d (*.f64 c c)) a)))) 1)
(*.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) 1)
(*.f64 1 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(*.f64 (sqrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) (sqrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)))
(*.f64 (cbrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) (pow.f64 (cbrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) 2) (cbrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (/.f64 1 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))
(*.f64 (/.f64 1 c) (-.f64 b (/.f64 d (/.f64 c a))))
(*.f64 (/.f64 1 c) (+.f64 b (*.f64 d (neg.f64 (/.f64 a c)))))
(*.f64 (/.f64 1 c) (+.f64 (*.f64 d (neg.f64 (/.f64 a c))) b))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))))
(*.f64 (+.f64 (sqrt.f64 (/.f64 b c)) (/.f64 (sqrt.f64 (*.f64 d a)) c)) (-.f64 (sqrt.f64 (/.f64 b c)) (/.f64 (sqrt.f64 (*.f64 d a)) c)))
(*.f64 (/.f64 1 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)))
(*.f64 (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))) (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))) (+.f64 (pow.f64 (/.f64 b c) 2) (-.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2) (/.f64 (*.f64 b (*.f64 d a)) (pow.f64 c 3)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 b c) (*.f64 c (/.f64 d (/.f64 c a))))) (*.f64 c c))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 b (*.f64 c c)) (*.f64 c (*.f64 d a)))) (pow.f64 c 3))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 c (*.f64 (/.f64 c b) (/.f64 d (/.f64 c a))))) (*.f64 (/.f64 c b) c))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 c c) (*.f64 (/.f64 c b) (*.f64 d a)))) (*.f64 (/.f64 c b) (*.f64 c c)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 (neg.f64 b) c) (*.f64 (neg.f64 c) (/.f64 d (/.f64 c a))))) (*.f64 c (neg.f64 c)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 (neg.f64 b) (*.f64 c c)) (*.f64 (neg.f64 c) (*.f64 d a)))) (neg.f64 (pow.f64 c 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))) (-.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) (-.f64 (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) (pow.f64 (/.f64 b c) 2)))))
(/.f64 1 (/.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))) (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c)))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (/.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))) (*.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))) (+.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))))
(/.f64 (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 3)) (-.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (neg.f64 (/.f64 (*.f64 b (*.f64 d a)) (pow.f64 c 3)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3) 3)) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (/.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2) 3)) (*.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2) (+.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))))))
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(/.f64 (-.f64 (*.f64 b c) (*.f64 c (/.f64 d (/.f64 c a)))) (*.f64 c c))
(/.f64 (-.f64 (*.f64 b (*.f64 c c)) (*.f64 c (*.f64 d a))) (pow.f64 c 3))
(/.f64 (-.f64 c (*.f64 (/.f64 c b) (/.f64 d (/.f64 c a)))) (*.f64 (/.f64 c b) c))
(/.f64 (-.f64 (*.f64 c c) (*.f64 (/.f64 c b) (*.f64 d a))) (*.f64 (/.f64 c b) (*.f64 c c)))
(/.f64 (-.f64 (*.f64 (neg.f64 b) c) (*.f64 (neg.f64 c) (/.f64 d (/.f64 c a)))) (*.f64 c (neg.f64 c)))
(/.f64 (-.f64 (*.f64 (neg.f64 b) (*.f64 c c)) (*.f64 (neg.f64 c) (*.f64 d a))) (neg.f64 (pow.f64 c 3)))
(/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 b c) 2)) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (neg.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))
(/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 b c) 3)) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (neg.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))))
(pow.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) 1)
(pow.f64 (sqrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) 2)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) 3)
(pow.f64 (pow.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) 3) 1/3)
(neg.f64 (+.f64 (/.f64 b (neg.f64 c)) (*.f64 (/.f64 d (*.f64 c c)) a)))
(neg.f64 (+.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (/.f64 b (neg.f64 c))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (neg.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (neg.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) 2))
(log.f64 (exp.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) 3))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)))
(exp.f64 (log.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) 1))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)))
(fma.f64 b (/.f64 1 c) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))
(fma.f64 1 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))
(fma.f64 (sqrt.f64 (/.f64 b c)) (sqrt.f64 (/.f64 b c)) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 b c)) 2) (cbrt.f64 (/.f64 b c)) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) 1)
(/.f64 d (/.f64 (*.f64 c c) a))
(/.f64 d (*.f64 c (/.f64 c a)))
(/.f64 d (*.f64 (/.f64 c a) c))
(/.f64 (/.f64 d c) (/.f64 c a))
(/.f64 a (*.f64 c (/.f64 c d)))
(/.f64 a (*.f64 (/.f64 c d) c))
(/.f64 (/.f64 a c) (/.f64 c d))
(/.f64 1 (*.f64 (/.f64 c a) (/.f64 c d)))
(/.f64 1 (/.f64 (*.f64 c c) (*.f64 d a)))
(/.f64 (sqrt.f64 a) (*.f64 (/.f64 c d) (/.f64 c (sqrt.f64 a))))
(/.f64 (sqrt.f64 d) (*.f64 (/.f64 c a) (/.f64 c (sqrt.f64 d))))
(/.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (/.f64 c d) (/.f64 c (cbrt.f64 a))))
(/.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 c a) (/.f64 c (cbrt.f64 d))))
(/.f64 (/.f64 d (/.f64 c a)) c)
(/.f64 (*.f64 d a) (*.f64 c c))
(/.f64 (neg.f64 a) (*.f64 (/.f64 c d) (neg.f64 c)))
(/.f64 (neg.f64 a) (*.f64 (neg.f64 c) (/.f64 c d)))
(/.f64 (neg.f64 d) (*.f64 (/.f64 c a) (neg.f64 c)))
(/.f64 (neg.f64 d) (*.f64 (neg.f64 c) (/.f64 c a)))
(/.f64 (*.f64 d (neg.f64 a)) (*.f64 c (neg.f64 c)))
(/.f64 (/.f64 a 1) (*.f64 (/.f64 c d) c))
(/.f64 (/.f64 a (sqrt.f64 c)) (*.f64 (/.f64 c d) (sqrt.f64 c)))
(/.f64 (/.f64 a (pow.f64 (cbrt.f64 c) 2)) (*.f64 (/.f64 c d) (cbrt.f64 c)))
(/.f64 (/.f64 d (*.f64 (sqrt.f64 c) (/.f64 c a))) (sqrt.f64 c))
(/.f64 (/.f64 d (*.f64 (pow.f64 (cbrt.f64 c) 2) (/.f64 c a))) (cbrt.f64 c))
(/.f64 (/.f64 d 1) (*.f64 (/.f64 c a) c))
(/.f64 (/.f64 d (sqrt.f64 c)) (*.f64 (/.f64 c a) (sqrt.f64 c)))
(/.f64 (/.f64 d (pow.f64 (cbrt.f64 c) 2)) (*.f64 (/.f64 c a) (cbrt.f64 c)))
(/.f64 -1 (*.f64 (/.f64 c a) (neg.f64 (/.f64 c d))))
(/.f64 -1 (*.f64 (/.f64 c d) (neg.f64 (/.f64 c a))))
(/.f64 (*.f64 d (neg.f64 (/.f64 a c))) (neg.f64 c))
(/.f64 (*.f64 (neg.f64 a) (neg.f64 d)) (*.f64 (neg.f64 c) (neg.f64 c)))
(pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 1)
(pow.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c) 2)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3) 1/3)
(neg.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))
(neg.f64 (*.f64 (/.f64 a (neg.f64 c)) (/.f64 d c)))
(neg.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))))
(neg.f64 (/.f64 (/.f64 a (neg.f64 c)) (/.f64 c d)))
(neg.f64 (/.f64 a (*.f64 (/.f64 c d) (neg.f64 c))))
(neg.f64 (/.f64 (*.f64 d a) (*.f64 c (neg.f64 c))))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))
(log.f64 (exp.f64 (*.f64 (/.f64 d (*.f64 c c)) a)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 d (*.f64 c c)) a))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 d (*.f64 c c)) a)))
(exp.f64 (log.f64 (*.f64 (/.f64 d (*.f64 c c)) a)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 1))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 d (*.f64 c c)) a)))
Outputs
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(+.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))
(+.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c))
(+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (*.f64 a (/.f64 (/.f64 d c) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c)) (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))))
(+.f64 (fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c)) (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))))
(+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c)) (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))))
(+.f64 (fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c)) (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))))
(+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (+.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c)))) (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d)))
(+.f64 (/.f64 b c) (+.f64 (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)) (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c)))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))))
(+.f64 (/.f64 b c) (+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (*.f64 a (/.f64 (/.f64 d c) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (*.f64 a (/.f64 (/.f64 d c) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (*.f64 a (/.f64 (/.f64 d c) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)))
(+.f64 (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d)) (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c))
(+.f64 (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 2 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c)))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 2 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (*.f64 2 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 2 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(fma.f64 2 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (*.f64 2 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 2 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(fma.f64 2 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (+.f64 (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (*.f64 2 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 2 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(fma.f64 2 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (*.f64 2 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 2 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(fma.f64 2 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (+.f64 (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c)))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (+.f64 (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (+.f64 (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 2 (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c)))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 2 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))) (+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c)))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 2 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (*.f64 a (/.f64 (/.f64 d c) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (*.f64 a (/.f64 (/.f64 d c) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d)) (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c))
(+.f64 (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) 1))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) 1))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (*.f64 a (/.f64 (/.f64 d c) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) 1))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (*.f64 a (/.f64 (/.f64 d c) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) 1))
(+.f64 (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d)) (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c))
(+.f64 (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))))
(+.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) 1))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (/.f64 b c))
(+.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c))
(+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (*.f64 a (/.f64 (/.f64 d c) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c)) (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))))
(+.f64 (fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c)) (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))))
(+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(+.f64 (fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c)) (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c))))
(+.f64 (fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c)) (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))))
(+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (+.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c)))) (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d)))
(+.f64 (/.f64 b c) (+.f64 (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)) (*.f64 (/.f64 a c) (+.f64 (/.f64 d (neg.f64 c)) (/.f64 d c)))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))))
(+.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (*.f64 a (/.f64 (/.f64 d c) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (fma.f64 (neg.f64 (/.f64 a c)) (/.f64 d c) (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (fma.f64 (/.f64 d (neg.f64 c)) (/.f64 a c) (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (*.f64 a (/.f64 (/.f64 d c) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (fma.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 1 (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (*.f64 a (/.f64 (/.f64 d c) c))))
(+.f64 (*.f64 (/.f64 a c) (+.f64 (/.f64 d c) (/.f64 d (neg.f64 c)))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c)) (/.f64 (sqrt.f64 (*.f64 d a)) c) (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(+.f64 (fma.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 a d))) c) (/.f64 (sqrt.f64 (*.f64 a d)) c) (*.f64 (/.f64 (/.f64 a c) c) d)) (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c))
(+.f64 (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)) (+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)))
(+.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (+.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c) (neg.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2))))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 2) (*.f64 (/.f64 d (*.f64 c c)) a)) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 (/.f64 (/.f64 a c) c) d)) (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c))
(+.f64 (fma.f64 (/.f64 (neg.f64 a) c) (/.f64 d c) (*.f64 a (/.f64 (/.f64 d c) c))) (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(+.f64 (-.f64 (/.f64 b c) (exp.f64 (log1p.f64 (*.f64 (/.f64 d (*.f64 c c)) a)))) 1)
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) 1)
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 1 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 (sqrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) (sqrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 (cbrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) (pow.f64 (cbrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) 2))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) 2) (cbrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (/.f64 1 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (/.f64 (/.f64 1 (/.f64 1 c)) (+.f64 b (*.f64 (/.f64 d c) a))))
(*.f64 c (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (fma.f64 (/.f64 d c) a b)))
(*.f64 (/.f64 1 c) (-.f64 b (/.f64 d (/.f64 c a))))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 (/.f64 1 c) (+.f64 b (*.f64 d (neg.f64 (/.f64 a c)))))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 (/.f64 1 c) (+.f64 (*.f64 d (neg.f64 (/.f64 a c))) b))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (/.f64 d (*.f64 c c)) (*.f64 a (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 3)) (fma.f64 (/.f64 (/.f64 d c) c) (*.f64 a (/.f64 (fma.f64 (/.f64 d c) a b) c)) (pow.f64 (/.f64 b c) 2)))
(*.f64 (+.f64 (sqrt.f64 (/.f64 b c)) (/.f64 (sqrt.f64 (*.f64 d a)) c)) (-.f64 (sqrt.f64 (/.f64 b c)) (/.f64 (sqrt.f64 (*.f64 d a)) c)))
(*.f64 (+.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) (sqrt.f64 (/.f64 b c))) (-.f64 (sqrt.f64 (/.f64 b c)) (/.f64 (sqrt.f64 (*.f64 a d)) c)))
(*.f64 (/.f64 1 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (/.f64 (/.f64 1 (/.f64 1 c)) (+.f64 b (*.f64 (/.f64 d c) a))))
(*.f64 c (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (fma.f64 (/.f64 d c) a b)))
(*.f64 (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))) (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (/.f64 d (*.f64 c c)) (*.f64 a (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 3)) (fma.f64 (/.f64 (/.f64 d c) c) (*.f64 a (/.f64 (fma.f64 (/.f64 d c) a b) c)) (pow.f64 (/.f64 b c) 2)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))) (+.f64 (pow.f64 (/.f64 b c) 2) (-.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2) (/.f64 (*.f64 b (*.f64 d a)) (pow.f64 c 3)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 3))) (-.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (/.f64 (*.f64 (*.f64 b d) a) (pow.f64 c 3))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (/.f64 (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (-.f64 (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 b c) (*.f64 c (/.f64 d (/.f64 c a))))) (*.f64 c c))
(/.f64 (*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (*.f64 c c)) (fma.f64 b c (*.f64 c (*.f64 (/.f64 d c) a))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (/.f64 (*.f64 c (fma.f64 (/.f64 d c) a b)) (*.f64 c c)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 b (*.f64 c c)) (*.f64 c (*.f64 d a)))) (pow.f64 c 3))
(*.f64 (pow.f64 c 3) (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (fma.f64 b (*.f64 c c) (*.f64 c (*.f64 a d)))))
(*.f64 (pow.f64 c 3) (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (*.f64 c (+.f64 (*.f64 c b) (*.f64 a d)))))
(*.f64 (pow.f64 c 3) (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (*.f64 c (+.f64 (*.f64 a d) (*.f64 c b)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 c (*.f64 (/.f64 c b) (/.f64 d (/.f64 c a))))) (*.f64 (/.f64 c b) c))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (+.f64 c (*.f64 (*.f64 (/.f64 d c) a) (/.f64 c b)))) (*.f64 c (/.f64 c b)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (fma.f64 (*.f64 a (/.f64 d c)) (/.f64 c b) c)) (*.f64 c (/.f64 c b)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 c c) (*.f64 (/.f64 c b) (*.f64 d a)))) (*.f64 (/.f64 c b) (*.f64 c c)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (fma.f64 c c (*.f64 (*.f64 a d) (/.f64 c b)))) (/.f64 (pow.f64 c 3) b))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (/.f64 (fma.f64 (*.f64 a d) (/.f64 c b) (*.f64 c c)) (/.f64 (pow.f64 c 3) b)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 (neg.f64 b) c) (*.f64 (neg.f64 c) (/.f64 d (/.f64 c a))))) (*.f64 c (neg.f64 c)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (fma.f64 (neg.f64 b) c (/.f64 (*.f64 (neg.f64 c) d) (/.f64 c a)))) (*.f64 c (neg.f64 c)))
(*.f64 c (*.f64 (neg.f64 c) (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (neg.f64 (*.f64 c (fma.f64 (/.f64 d c) a b))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (+.f64 (*.f64 (neg.f64 b) (*.f64 c c)) (*.f64 (neg.f64 c) (*.f64 d a)))) (neg.f64 (pow.f64 c 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (fma.f64 (neg.f64 b) (*.f64 c c) (*.f64 (neg.f64 c) (*.f64 a d)))) (neg.f64 (pow.f64 c 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (neg.f64 (*.f64 c (+.f64 (*.f64 c b) (*.f64 a d))))) (neg.f64 (pow.f64 c 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (neg.f64 (*.f64 c (+.f64 (*.f64 a d) (*.f64 c b))))) (neg.f64 (pow.f64 c 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))) (-.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 3)) (-.f64 (pow.f64 (/.f64 b c) 4) (*.f64 (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2) (*.f64 (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a))) (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a))))))) (-.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (/.f64 d (*.f64 c c)) (*.f64 a (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a)))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 3)) (-.f64 (pow.f64 (/.f64 b c) 4) (*.f64 (/.f64 (fma.f64 (/.f64 d c) a b) c) (*.f64 (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2) (/.f64 (fma.f64 (/.f64 d c) a b) c))))) (-.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (/.f64 (fma.f64 (/.f64 d c) a b) c))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) (-.f64 (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))) (pow.f64 (/.f64 b c) 2)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) (*.f64 a (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a))))) 3))) (+.f64 (pow.f64 (/.f64 b c) 4) (*.f64 (*.f64 (/.f64 (/.f64 a c) c) d) (*.f64 (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a))) (-.f64 (*.f64 (/.f64 d (*.f64 c c)) (*.f64 a (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a))))) (pow.f64 (/.f64 b c) 2))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (/.f64 (fma.f64 (/.f64 d c) a b) c)) 3) (pow.f64 (/.f64 b c) 6)) (fma.f64 (*.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (/.f64 (fma.f64 (/.f64 d c) a b) c)) (-.f64 (*.f64 (*.f64 a (/.f64 (/.f64 d c) c)) (/.f64 (fma.f64 (/.f64 d c) a b) c)) (pow.f64 (/.f64 b c) 2)) (pow.f64 (/.f64 b c) 4))))
(/.f64 1 (/.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (/.f64 (/.f64 1 (/.f64 1 c)) (+.f64 b (*.f64 (/.f64 d c) a))))
(*.f64 c (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (fma.f64 (/.f64 d c) a b)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))) (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (/.f64 d (*.f64 c c)) (*.f64 a (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 3)) (fma.f64 (/.f64 (/.f64 d c) c) (*.f64 a (/.f64 (fma.f64 (/.f64 d c) a b) c)) (pow.f64 (/.f64 b c) 2)))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (/.f64 (/.f64 1 (/.f64 1 c)) (+.f64 b (*.f64 (/.f64 d c) a))))
(*.f64 c (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (fma.f64 (/.f64 d c) a b)))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c)))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2)) (-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c)))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)) (+.f64 (/.f64 b c) (*.f64 a (/.f64 (/.f64 d c) c))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (/.f64 d (*.f64 c c)) (*.f64 a (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 3)) (fma.f64 (/.f64 (/.f64 d c) c) (*.f64 a (/.f64 (fma.f64 (/.f64 d c) a b) c)) (pow.f64 (/.f64 b c) 2)))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (/.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 6) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 6)) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (/.f64 d (*.f64 c c)) (*.f64 a (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a)))))) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 3))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 6) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 6)) (*.f64 (fma.f64 (/.f64 (/.f64 d c) c) (*.f64 a (/.f64 (fma.f64 (/.f64 d c) a b) c)) (pow.f64 (/.f64 b c) 2)) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 3))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))) (*.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))) (+.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 4) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 4)) (*.f64 (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a))) (+.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2))))
(/.f64 (*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 4) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 4)) (fma.f64 (/.f64 d c) a b)) c) (+.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2)))
(/.f64 (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))) 3)) (-.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (neg.f64 (/.f64 (*.f64 b (*.f64 d a)) (pow.f64 c 3)))))
(/.f64 (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (-.f64 (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2) (/.f64 (neg.f64 (*.f64 (*.f64 b d) a)) (pow.f64 c 3)))))
(/.f64 (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d (neg.f64 c))) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3) 3)) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (/.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 3) 3)) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (/.f64 d (*.f64 c c)) (*.f64 a (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a)))))) (+.f64 (pow.f64 (/.f64 b c) 6) (+.f64 (*.f64 (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 3) (pow.f64 (/.f64 b c) 3)) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 6)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 3) 3)) (*.f64 (fma.f64 (/.f64 (/.f64 d c) c) (*.f64 a (/.f64 (fma.f64 (/.f64 d c) a b) c)) (pow.f64 (/.f64 b c) 2)) (+.f64 (pow.f64 (/.f64 b c) 6) (fma.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 3) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 6)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2) 3)) (*.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2) (+.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2) 3)) (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a)))) (+.f64 (pow.f64 (/.f64 b c) 4) (+.f64 (*.f64 (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2) (pow.f64 (/.f64 b c) 2)) (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 4))))
(/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 6) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 6)) (+.f64 (pow.f64 (/.f64 b c) 4) (fma.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2) (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 4)))) (/.f64 (fma.f64 (/.f64 d c) a b) c))
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(/.f64 (-.f64 (*.f64 b c) (*.f64 c (/.f64 d (/.f64 c a)))) (*.f64 c c))
(/.f64 (fma.f64 b c (/.f64 (*.f64 (neg.f64 c) d) (/.f64 c a))) (*.f64 c c))
(/.f64 (*.f64 c (-.f64 b (*.f64 a (/.f64 d c)))) (*.f64 c c))
(/.f64 (-.f64 (*.f64 b (*.f64 c c)) (*.f64 c (*.f64 d a))) (pow.f64 c 3))
(/.f64 (-.f64 (*.f64 (*.f64 c b) c) (*.f64 c (*.f64 a d))) (pow.f64 c 3))
(/.f64 (*.f64 c (-.f64 (*.f64 c b) (*.f64 a d))) (pow.f64 c 3))
(/.f64 (-.f64 c (*.f64 (/.f64 c b) (/.f64 d (/.f64 c a)))) (*.f64 (/.f64 c b) c))
(/.f64 (-.f64 c (*.f64 (*.f64 (/.f64 d c) a) (/.f64 c b))) (*.f64 c (/.f64 c b)))
(*.f64 (/.f64 (-.f64 c (*.f64 (*.f64 a (/.f64 d c)) (/.f64 c b))) (*.f64 c c)) b)
(/.f64 (-.f64 (*.f64 c c) (*.f64 (/.f64 c b) (*.f64 d a))) (*.f64 (/.f64 c b) (*.f64 c c)))
(/.f64 (-.f64 (*.f64 c c) (*.f64 (*.f64 a d) (/.f64 c b))) (/.f64 (pow.f64 c 3) b))
(/.f64 (fma.f64 c c (*.f64 (*.f64 a d) (/.f64 (neg.f64 c) b))) (/.f64 (pow.f64 c 3) b))
(/.f64 (-.f64 (*.f64 (neg.f64 b) c) (*.f64 (neg.f64 c) (/.f64 d (/.f64 c a)))) (*.f64 c (neg.f64 c)))
(/.f64 (+.f64 (neg.f64 (*.f64 c b)) (*.f64 c (*.f64 (/.f64 d c) a))) (*.f64 c (neg.f64 c)))
(/.f64 (*.f64 c (+.f64 (neg.f64 b) (*.f64 a (/.f64 d c)))) (*.f64 c (neg.f64 c)))
(/.f64 (*.f64 c (+.f64 (*.f64 a (/.f64 d c)) (neg.f64 b))) (*.f64 c (neg.f64 c)))
(/.f64 (-.f64 (*.f64 (neg.f64 b) (*.f64 c c)) (*.f64 (neg.f64 c) (*.f64 d a))) (neg.f64 (pow.f64 c 3)))
(/.f64 (+.f64 (*.f64 (*.f64 c c) (neg.f64 b)) (*.f64 c (*.f64 a d))) (neg.f64 (pow.f64 c 3)))
(/.f64 (*.f64 c (+.f64 (neg.f64 (*.f64 c b)) (*.f64 a d))) (neg.f64 (pow.f64 c 3)))
(/.f64 (*.f64 c (+.f64 (*.f64 a d) (neg.f64 (*.f64 c b)))) (neg.f64 (pow.f64 c 3)))
(/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 b c) 2)) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (neg.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2) (neg.f64 (pow.f64 (/.f64 b c) 2))) (*.f64 (/.f64 1 c) (neg.f64 (+.f64 b (*.f64 (/.f64 d c) a)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2) (pow.f64 (/.f64 b c) 2)) (/.f64 (neg.f64 (fma.f64 (/.f64 d c) a b)) c))
(/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 b c) 3)) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (neg.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a))))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 3) (neg.f64 (pow.f64 (/.f64 b c) 3))) (neg.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (/.f64 d (*.f64 c c)) (*.f64 a (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a))))))))
(/.f64 (-.f64 (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 3) (pow.f64 (/.f64 b c) 3)) (neg.f64 (fma.f64 (/.f64 (/.f64 d c) c) (*.f64 a (/.f64 (fma.f64 (/.f64 d c) a b) c)) (pow.f64 (/.f64 b c) 2))))
(pow.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) 1)
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(pow.f64 (sqrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) 2)
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) 3)
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(pow.f64 (pow.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) 3) 1/3)
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(neg.f64 (+.f64 (/.f64 b (neg.f64 c)) (*.f64 (/.f64 d (*.f64 c c)) a)))
(neg.f64 (fma.f64 (/.f64 d (*.f64 c c)) a (/.f64 b (neg.f64 c))))
(neg.f64 (fma.f64 a (/.f64 (/.f64 d c) c) (/.f64 b (neg.f64 c))))
(neg.f64 (+.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (/.f64 b (neg.f64 c))))
(neg.f64 (fma.f64 (/.f64 d (*.f64 c c)) a (/.f64 b (neg.f64 c))))
(neg.f64 (fma.f64 a (/.f64 (/.f64 d c) c) (/.f64 b (neg.f64 c))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2)) (neg.f64 (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2) (neg.f64 (pow.f64 (/.f64 b c) 2))) (*.f64 (/.f64 1 c) (neg.f64 (+.f64 b (*.f64 (/.f64 d c) a)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 2) (pow.f64 (/.f64 b c) 2)) (/.f64 (neg.f64 (fma.f64 (/.f64 d c) a b)) c))
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3)) (neg.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 d (*.f64 c c)) a) (*.f64 (/.f64 1 c) (+.f64 b (/.f64 d (/.f64 c a)))))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 3) (neg.f64 (pow.f64 (/.f64 b c) 3))) (neg.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (/.f64 d (*.f64 c c)) (*.f64 a (*.f64 (/.f64 1 c) (+.f64 b (*.f64 (/.f64 d c) a))))))))
(/.f64 (-.f64 (pow.f64 (*.f64 a (/.f64 (/.f64 d c) c)) 3) (pow.f64 (/.f64 b c) 3)) (neg.f64 (fma.f64 (/.f64 (/.f64 d c) c) (*.f64 a (/.f64 (fma.f64 (/.f64 d c) a b) c)) (pow.f64 (/.f64 b c) 2))))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) 2))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 b (*.f64 (/.f64 d c) a)) c) 2))
(fabs.f64 (/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c))
(log.f64 (exp.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(cbrt.f64 (pow.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) 3))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(expm1.f64 (log1p.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(exp.f64 (log.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)) 1))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(log1p.f64 (expm1.f64 (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)))
(fma.f64 -1 (*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 b c))
(/.f64 (-.f64 b (*.f64 a (/.f64 d c))) c)
(fma.f64 b (/.f64 1 c) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))
(+.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c))
(fma.f64 1 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))
(+.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c))
(fma.f64 (sqrt.f64 (/.f64 b c)) (sqrt.f64 (/.f64 b c)) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))
(+.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c))
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 b c)) 2) (cbrt.f64 (/.f64 b c)) (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))
(+.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))))
(fma.f64 (/.f64 d c) (/.f64 a (neg.f64 c)) (/.f64 b c))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 d (*.f64 c c)) a))) 1)
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 d (/.f64 (*.f64 c c) a))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 d (*.f64 c (/.f64 c a)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 d (*.f64 (/.f64 c a) c))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (/.f64 d c) (/.f64 c a))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 a (*.f64 c (/.f64 c d)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 a (*.f64 (/.f64 c d) c))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (/.f64 a c) (/.f64 c d))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 1 (*.f64 (/.f64 c a) (/.f64 c d)))
(*.f64 (/.f64 1 (*.f64 c c)) (*.f64 a d))
(*.f64 (*.f64 a d) (/.f64 1 (*.f64 c c)))
(/.f64 1 (/.f64 (*.f64 c c) (*.f64 d a)))
(*.f64 (/.f64 1 (*.f64 c c)) (*.f64 a d))
(*.f64 (*.f64 a d) (/.f64 1 (*.f64 c c)))
(/.f64 (sqrt.f64 a) (*.f64 (/.f64 c d) (/.f64 c (sqrt.f64 a))))
(/.f64 (/.f64 (sqrt.f64 a) (/.f64 c d)) (/.f64 c (sqrt.f64 a)))
(*.f64 (/.f64 (sqrt.f64 a) (/.f64 c (/.f64 d c))) (sqrt.f64 a))
(/.f64 (sqrt.f64 d) (*.f64 (/.f64 c a) (/.f64 c (sqrt.f64 d))))
(/.f64 (sqrt.f64 d) (/.f64 (*.f64 c (/.f64 c a)) (sqrt.f64 d)))
(*.f64 (/.f64 (*.f64 (/.f64 (sqrt.f64 d) c) a) c) (sqrt.f64 d))
(/.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (/.f64 c d) (/.f64 c (cbrt.f64 a))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 a) 2) (/.f64 c (/.f64 d c))) (cbrt.f64 a))
(/.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 c a) (/.f64 c (cbrt.f64 d))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 c (/.f64 c a))) (cbrt.f64 d))
(/.f64 (/.f64 d (/.f64 c a)) c)
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 d a) (*.f64 c c))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (neg.f64 a) (*.f64 (/.f64 c d) (neg.f64 c)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (neg.f64 a) (*.f64 (neg.f64 c) (/.f64 c d)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (neg.f64 d) (*.f64 (/.f64 c a) (neg.f64 c)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (neg.f64 d) (*.f64 (neg.f64 c) (/.f64 c a)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 d (neg.f64 a)) (*.f64 c (neg.f64 c)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (/.f64 a 1) (*.f64 (/.f64 c d) c))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (/.f64 a (sqrt.f64 c)) (*.f64 (/.f64 c d) (sqrt.f64 c)))
(*.f64 (/.f64 (/.f64 a (sqrt.f64 c)) (*.f64 c (sqrt.f64 c))) d)
(/.f64 (/.f64 a (pow.f64 (cbrt.f64 c) 2)) (*.f64 (/.f64 c d) (cbrt.f64 c)))
(/.f64 a (*.f64 (*.f64 (/.f64 c d) (cbrt.f64 c)) (pow.f64 (cbrt.f64 c) 2)))
(/.f64 a (*.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (/.f64 c d) (cbrt.f64 c))))
(/.f64 (/.f64 d (*.f64 (sqrt.f64 c) (/.f64 c a))) (sqrt.f64 c))
(/.f64 d (*.f64 (*.f64 (/.f64 c a) (sqrt.f64 c)) (sqrt.f64 c)))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 c)) (*.f64 c (sqrt.f64 c))) a)
(/.f64 (/.f64 d (*.f64 (pow.f64 (cbrt.f64 c) 2) (/.f64 c a))) (cbrt.f64 c))
(/.f64 (/.f64 d (pow.f64 (cbrt.f64 c) 2)) (*.f64 (/.f64 c a) (cbrt.f64 c)))
(/.f64 d (*.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (/.f64 c a) (cbrt.f64 c))))
(/.f64 (/.f64 d 1) (*.f64 (/.f64 c a) c))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (/.f64 d (sqrt.f64 c)) (*.f64 (/.f64 c a) (sqrt.f64 c)))
(/.f64 d (*.f64 (*.f64 (/.f64 c a) (sqrt.f64 c)) (sqrt.f64 c)))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 c)) (*.f64 c (sqrt.f64 c))) a)
(/.f64 (/.f64 d (pow.f64 (cbrt.f64 c) 2)) (*.f64 (/.f64 c a) (cbrt.f64 c)))
(/.f64 d (*.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (/.f64 c a) (cbrt.f64 c))))
(/.f64 -1 (*.f64 (/.f64 c a) (neg.f64 (/.f64 c d))))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 -1 (*.f64 (/.f64 c d) (neg.f64 (/.f64 c a))))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 d (neg.f64 (/.f64 a c))) (neg.f64 c))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(/.f64 (*.f64 (neg.f64 a) (neg.f64 d)) (*.f64 (neg.f64 c) (neg.f64 c)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 1)
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 d a)) c) 2)
(pow.f64 (/.f64 (sqrt.f64 (*.f64 a d)) c) 2)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 3)
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(pow.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3) 1/3)
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(neg.f64 (/.f64 d (*.f64 (/.f64 c a) (neg.f64 c))))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(neg.f64 (*.f64 (/.f64 a (neg.f64 c)) (/.f64 d c)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(neg.f64 (*.f64 (/.f64 d c) (/.f64 a (neg.f64 c))))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(neg.f64 (/.f64 (/.f64 a (neg.f64 c)) (/.f64 c d)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(neg.f64 (/.f64 a (*.f64 (/.f64 c d) (neg.f64 c))))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(neg.f64 (/.f64 (*.f64 d a) (*.f64 c (neg.f64 c))))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 2))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 a c) c) d) 2))
(fabs.f64 (*.f64 a (/.f64 (/.f64 d c) c)))
(log.f64 (exp.f64 (*.f64 (/.f64 d (*.f64 c c)) a)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 d (*.f64 c c)) a))))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 d (*.f64 c c)) a) 3))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 d (*.f64 c c)) a)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(exp.f64 (log.f64 (*.f64 (/.f64 d (*.f64 c c)) a)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 d (*.f64 c c)) a)) 1))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 d (*.f64 c c)) a)))
(*.f64 (/.f64 (/.f64 a c) c) d)
(*.f64 a (/.f64 (/.f64 d c) c))

localize12.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
100.0%
(/.f64 1 (hypot.f64 c d))
99.7%
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))
Compiler

Compiled 26 to 12 computations (53.8% saved)

series6.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
a
@-inf
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))
1.0ms
c
@-inf
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))
1.0ms
a
@0
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))
1.0ms
c
@0
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))
1.0ms
c
@inf
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))

rewrite106.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1846×add-sqr-sqrt
1832×*-un-lft-identity
1692×add-cube-cbrt
1668×add-cbrt-cube
212×pow1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01117
121913
2266413
Stop Event
node limit
Counts
1 → 25
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))
Outputs
(((-.f64 0 (/.f64 a (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a (hypot.f64 c d)))) 1) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (/.f64 0 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) a)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 a (hypot.f64 c d)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 a (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a) (/.f64 (hypot.f64 c d) (sqrt.f64 a))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a) 2) (/.f64 (hypot.f64 c d) (cbrt.f64 a))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) a)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 a 1) (hypot.f64 c d)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 a (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 a (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d)) 1) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d))) 2) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d))) 3) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d)) 3) 1/3) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d)) 2)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d)) 3)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d))) 1)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify63.0ms (0.5%)

Algorithm
egg-herbie
Rules
1368×associate-/l*
1312×times-frac
908×associate-/r*
816×associate-*r/
794×*-commutative
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01972687
15782571
222782439
Stop Event
node limit
Counts
61 → 100
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 d 5))) (*.f64 -1/8 (/.f64 a (pow.f64 d 5)))) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 a d)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 d 5))) (*.f64 -1/8 (/.f64 a (pow.f64 d 5)))) (pow.f64 c 4)) (+.f64 (*.f64 (pow.f64 c 6) (+.f64 (*.f64 1/8 (/.f64 a (pow.f64 d 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 d 5))) (*.f64 -1/8 (/.f64 a (pow.f64 d 5)))) (pow.f64 d 2))))) (+.f64 (*.f64 -1 (/.f64 a d)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))))
(*.f64 -1 (/.f64 a c))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))) (*.f64 -1 (/.f64 a c)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 a (pow.f64 d 4)) (pow.f64 c 5))) (+.f64 (*.f64 -1 (/.f64 a c)) (*.f64 -1/4 (/.f64 (*.f64 a (pow.f64 d 4)) (pow.f64 c 5))))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 a (pow.f64 d 4)) (pow.f64 c 5))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 a (pow.f64 d 6)) (pow.f64 c 7))) (+.f64 (*.f64 -1 (/.f64 a c)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 4))) (*.f64 -1/4 (*.f64 a (pow.f64 d 4))))) (pow.f64 c 7))) (*.f64 -1/4 (/.f64 (*.f64 a (pow.f64 d 4)) (pow.f64 c 5))))))))
(/.f64 a c)
(+.f64 (/.f64 a c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))))
(+.f64 (/.f64 a c) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 4))) (*.f64 -1/4 (*.f64 a (pow.f64 d 4)))) (pow.f64 c 5))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3)))))
(+.f64 (/.f64 a c) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 4))) (*.f64 -1/4 (*.f64 a (pow.f64 d 4)))))) (*.f64 1/8 (*.f64 a (pow.f64 d 6)))) (pow.f64 c 7))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 4))) (*.f64 -1/4 (*.f64 a (pow.f64 d 4)))) (pow.f64 c 5))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))))))
(*.f64 -1 (/.f64 a c))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))) (*.f64 -1 (/.f64 a c)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))) (+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 d 4)) (*.f64 -1 (/.f64 a c))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))) (+.f64 (*.f64 (pow.f64 d 6) (+.f64 (*.f64 1/8 (/.f64 a (pow.f64 c 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 c 2))))) (+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 d 4)) (*.f64 -1 (/.f64 a c)))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 5))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 5))) (+.f64 (*.f64 -1 (/.f64 a d)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a)))) (pow.f64 d 7))) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 6) a) (pow.f64 d 7))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))))))
(/.f64 a d)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))) (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a))) (pow.f64 d 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))) (/.f64 a d)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a))) (pow.f64 d 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 c 6) a)) (*.f64 -1/2 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a)))))) (pow.f64 d 7))) (/.f64 a d))))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(-.f64 0 (/.f64 a (hypot.f64 c d)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 a (hypot.f64 c d)))) 1)
(-.f64 (/.f64 0 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d)))
(/.f64 1 (/.f64 (hypot.f64 c d) a))
(/.f64 a (hypot.f64 c d))
(/.f64 a (neg.f64 (hypot.f64 c d)))
(/.f64 (sqrt.f64 a) (/.f64 (hypot.f64 c d) (sqrt.f64 a)))
(/.f64 (pow.f64 (cbrt.f64 a) 2) (/.f64 (hypot.f64 c d) (cbrt.f64 a)))
(/.f64 -1 (/.f64 (hypot.f64 c d) a))
(/.f64 (/.f64 a 1) (hypot.f64 c d))
(/.f64 (/.f64 a (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (/.f64 a (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d)))
(pow.f64 (/.f64 a (hypot.f64 c d)) 1)
(pow.f64 (sqrt.f64 (/.f64 a (hypot.f64 c d))) 2)
(pow.f64 (cbrt.f64 (/.f64 a (hypot.f64 c d))) 3)
(pow.f64 (pow.f64 (/.f64 a (hypot.f64 c d)) 3) 1/3)
(neg.f64 (/.f64 a (hypot.f64 c d)))
(sqrt.f64 (pow.f64 (/.f64 a (hypot.f64 c d)) 2))
(log.f64 (exp.f64 (/.f64 a (hypot.f64 c d))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 a (hypot.f64 c d)))))
(cbrt.f64 (pow.f64 (/.f64 a (hypot.f64 c d)) 3))
(expm1.f64 (log1p.f64 (/.f64 a (hypot.f64 c d))))
(exp.f64 (log.f64 (/.f64 a (hypot.f64 c d))))
(exp.f64 (*.f64 (log.f64 (/.f64 a (hypot.f64 c d))) 1))
(log1p.f64 (expm1.f64 (/.f64 a (hypot.f64 c d))))
Outputs
(*.f64 -1 (/.f64 a d))
(neg.f64 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))
(fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 1/2 (*.f64 a (*.f64 c c))) (pow.f64 d 3)))
(-.f64 (/.f64 1/2 (/.f64 (pow.f64 d 3) (*.f64 a (*.f64 c c)))) (/.f64 a d))
(-.f64 (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (pow.f64 d 3) 1/2)) (/.f64 a d))
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 d 5))) (*.f64 -1/8 (/.f64 a (pow.f64 d 5)))) (pow.f64 c 4)) (+.f64 (*.f64 -1 (/.f64 a d)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)))))
(fma.f64 (*.f64 (/.f64 a (pow.f64 d 5)) -3/8) (pow.f64 c 4) (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 1/2 (*.f64 a (*.f64 c c))) (pow.f64 d 3))))
(fma.f64 (*.f64 (/.f64 a (pow.f64 d 5)) -3/8) (pow.f64 c 4) (-.f64 (/.f64 1/2 (/.f64 (pow.f64 d 3) (*.f64 a (*.f64 c c)))) (/.f64 a d)))
(fma.f64 (/.f64 (*.f64 a -3/8) (pow.f64 d 5)) (pow.f64 c 4) (-.f64 (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (pow.f64 d 3) 1/2)) (/.f64 a d)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 d 5))) (*.f64 -1/8 (/.f64 a (pow.f64 d 5)))) (pow.f64 c 4)) (+.f64 (*.f64 (pow.f64 c 6) (+.f64 (*.f64 1/8 (/.f64 a (pow.f64 d 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 d 5))) (*.f64 -1/8 (/.f64 a (pow.f64 d 5)))) (pow.f64 d 2))))) (+.f64 (*.f64 -1 (/.f64 a d)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))))
(fma.f64 (*.f64 (/.f64 a (pow.f64 d 5)) -3/8) (pow.f64 c 4) (fma.f64 (pow.f64 c 6) (fma.f64 1/8 (/.f64 a (pow.f64 d 7)) (*.f64 -1/2 (/.f64 (*.f64 (/.f64 a (pow.f64 d 5)) -3/8) (*.f64 d d)))) (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 1/2 (*.f64 a (*.f64 c c))) (pow.f64 d 3)))))
(fma.f64 (*.f64 (/.f64 a (pow.f64 d 5)) -3/8) (pow.f64 c 4) (fma.f64 (pow.f64 c 6) (fma.f64 1/8 (/.f64 a (pow.f64 d 7)) (*.f64 -1/2 (*.f64 (/.f64 (/.f64 a (pow.f64 d 5)) d) (/.f64 -3/8 d)))) (-.f64 (/.f64 1/2 (/.f64 (pow.f64 d 3) (*.f64 a (*.f64 c c)))) (/.f64 a d))))
(fma.f64 (/.f64 (*.f64 a -3/8) (pow.f64 d 5)) (pow.f64 c 4) (fma.f64 (pow.f64 c 6) (fma.f64 1/8 (/.f64 a (pow.f64 d 7)) (/.f64 (/.f64 (*.f64 -1/2 (*.f64 a -3/8)) (pow.f64 d 5)) (*.f64 d d))) (-.f64 (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (pow.f64 d 3) 1/2)) (/.f64 a d))))
(*.f64 -1 (/.f64 a c))
(neg.f64 (/.f64 a c))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))) (*.f64 -1 (/.f64 a c)))
(fma.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (*.f64 d d))) (neg.f64 (/.f64 a c)))
(-.f64 (*.f64 1/2 (*.f64 (/.f64 a (pow.f64 c 3)) (*.f64 d d))) (/.f64 a c))
(fma.f64 1/2 (*.f64 (*.f64 d d) (/.f64 a (pow.f64 c 3))) (neg.f64 (/.f64 a c)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 a (pow.f64 d 4)) (pow.f64 c 5))) (+.f64 (*.f64 -1 (/.f64 a c)) (*.f64 -1/4 (/.f64 (*.f64 a (pow.f64 d 4)) (pow.f64 c 5))))))
(fma.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (*.f64 d d))) (fma.f64 -1/8 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 4))) (fma.f64 -1 (/.f64 a c) (/.f64 (*.f64 -1/4 (*.f64 a (pow.f64 d 4))) (pow.f64 c 5)))))
(fma.f64 1/2 (*.f64 (/.f64 a (pow.f64 c 3)) (*.f64 d d)) (fma.f64 -1/8 (*.f64 (/.f64 a (pow.f64 c 5)) (pow.f64 d 4)) (-.f64 (/.f64 (*.f64 a (pow.f64 d 4)) (/.f64 (pow.f64 c 5) -1/4)) (/.f64 a c))))
(-.f64 (fma.f64 1/2 (*.f64 (*.f64 d d) (/.f64 a (pow.f64 c 3))) (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 5) (*.f64 a -3/8)))) (/.f64 a c))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 a (pow.f64 d 4)) (pow.f64 c 5))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 a (pow.f64 d 6)) (pow.f64 c 7))) (+.f64 (*.f64 -1 (/.f64 a c)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 4))) (*.f64 -1/4 (*.f64 a (pow.f64 d 4))))) (pow.f64 c 7))) (*.f64 -1/4 (/.f64 (*.f64 a (pow.f64 d 4)) (pow.f64 c 5))))))))
(fma.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (*.f64 d d))) (fma.f64 -1/8 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 4))) (fma.f64 1/8 (/.f64 a (/.f64 (pow.f64 c 7) (pow.f64 d 6))) (fma.f64 -1 (/.f64 a c) (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 7) (*.f64 (*.f64 a (pow.f64 d 4)) -3/8))) (/.f64 (*.f64 -1/4 (*.f64 a (pow.f64 d 4))) (pow.f64 c 5)))))))
(fma.f64 1/2 (*.f64 (/.f64 a (pow.f64 c 3)) (*.f64 d d)) (fma.f64 -1/8 (*.f64 (/.f64 a (pow.f64 c 5)) (pow.f64 d 4)) (fma.f64 1/8 (/.f64 a (/.f64 (pow.f64 c 7) (pow.f64 d 6))) (-.f64 (fma.f64 -1/4 (*.f64 (/.f64 a (pow.f64 c 5)) (pow.f64 d 4)) (*.f64 -1/2 (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 7)) (*.f64 a (*.f64 (pow.f64 d 4) -3/8))))) (/.f64 a c)))))
(+.f64 (*.f64 (pow.f64 d 6) (*.f64 (/.f64 1/8 (pow.f64 c 7)) a)) (+.f64 (-.f64 (fma.f64 1/2 (*.f64 (*.f64 d d) (/.f64 a (pow.f64 c 3))) (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 5) (*.f64 a -3/8)))) (/.f64 a c)) (*.f64 (/.f64 -1/2 (pow.f64 c 7)) (*.f64 (pow.f64 d 6) (*.f64 a -3/8)))))
(/.f64 a c)
(+.f64 (/.f64 a c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))))
(+.f64 (/.f64 a c) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (*.f64 d d)))))
(fma.f64 -1/2 (*.f64 (/.f64 a (pow.f64 c 3)) (*.f64 d d)) (/.f64 a c))
(fma.f64 -1/2 (*.f64 (*.f64 d d) (/.f64 a (pow.f64 c 3))) (/.f64 a c))
(+.f64 (/.f64 a c) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 4))) (*.f64 -1/4 (*.f64 a (pow.f64 d 4)))) (pow.f64 c 5))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3)))))
(+.f64 (/.f64 a c) (fma.f64 -1 (/.f64 (*.f64 (*.f64 a (pow.f64 d 4)) -3/8) (pow.f64 c 5)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (*.f64 d d))))))
(+.f64 (/.f64 a c) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 a (pow.f64 c 3)) (*.f64 d d))) (/.f64 (*.f64 a (pow.f64 d 4)) (/.f64 (pow.f64 c 5) -3/8))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 d d) (/.f64 a (pow.f64 c 3))) (/.f64 a c)) (/.f64 (*.f64 (*.f64 a (pow.f64 d 4)) 3/8) (pow.f64 c 5)))
(+.f64 (/.f64 a c) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 4))) (*.f64 -1/4 (*.f64 a (pow.f64 d 4)))))) (*.f64 1/8 (*.f64 a (pow.f64 d 6)))) (pow.f64 c 7))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 4))) (*.f64 -1/4 (*.f64 a (pow.f64 d 4)))) (pow.f64 c 5))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))))))
(+.f64 (/.f64 a c) (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 d d) (*.f64 (*.f64 a (pow.f64 d 4)) -3/8)) (*.f64 1/8 (*.f64 a (pow.f64 d 6)))) (pow.f64 c 7)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 a (pow.f64 d 4)) -3/8) (pow.f64 c 5)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (*.f64 d d)))))))
(+.f64 (/.f64 a c) (-.f64 (-.f64 (*.f64 -1/2 (*.f64 (/.f64 a (pow.f64 c 3)) (*.f64 d d))) (/.f64 (*.f64 a (pow.f64 d 4)) (/.f64 (pow.f64 c 5) -3/8))) (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 d d) (*.f64 a (*.f64 (pow.f64 d 4) -3/8))) (*.f64 a (*.f64 (pow.f64 d 6) 1/8))) (pow.f64 c 7))))
(+.f64 (/.f64 a c) (-.f64 (fma.f64 -1/2 (*.f64 (*.f64 d d) (/.f64 a (pow.f64 c 3))) (/.f64 (*.f64 (*.f64 a (pow.f64 d 4)) 3/8) (pow.f64 c 5))) (/.f64 (fma.f64 1/8 (*.f64 a (pow.f64 d 6)) (*.f64 -1/2 (*.f64 (pow.f64 d 6) (*.f64 a -3/8)))) (pow.f64 c 7))))
(*.f64 -1 (/.f64 a c))
(neg.f64 (/.f64 a c))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))) (*.f64 -1 (/.f64 a c)))
(fma.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (*.f64 d d))) (neg.f64 (/.f64 a c)))
(-.f64 (*.f64 1/2 (*.f64 (/.f64 a (pow.f64 c 3)) (*.f64 d d))) (/.f64 a c))
(fma.f64 1/2 (*.f64 (*.f64 d d) (/.f64 a (pow.f64 c 3))) (neg.f64 (/.f64 a c)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))) (+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 d 4)) (*.f64 -1 (/.f64 a c))))
(fma.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (*.f64 d d))) (fma.f64 -1/8 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 4))) (fma.f64 -1 (/.f64 a c) (/.f64 (*.f64 -1/4 (*.f64 a (pow.f64 d 4))) (pow.f64 c 5)))))
(fma.f64 1/2 (*.f64 (/.f64 a (pow.f64 c 3)) (*.f64 d d)) (fma.f64 -1/8 (*.f64 (/.f64 a (pow.f64 c 5)) (pow.f64 d 4)) (-.f64 (/.f64 (*.f64 a (pow.f64 d 4)) (/.f64 (pow.f64 c 5) -1/4)) (/.f64 a c))))
(-.f64 (fma.f64 1/2 (*.f64 (*.f64 d d) (/.f64 a (pow.f64 c 3))) (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 5) (*.f64 a -3/8)))) (/.f64 a c))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 2)) (pow.f64 c 3))) (+.f64 (*.f64 (pow.f64 d 6) (+.f64 (*.f64 1/8 (/.f64 a (pow.f64 c 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 c 2))))) (+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 d 4)) (*.f64 -1 (/.f64 a c)))))
(fma.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (*.f64 d d))) (fma.f64 (pow.f64 d 6) (fma.f64 1/8 (/.f64 a (pow.f64 c 7)) (*.f64 -1/2 (/.f64 (*.f64 (/.f64 a (pow.f64 c 5)) -3/8) (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (pow.f64 c 5)) -3/8) (pow.f64 d 4) (neg.f64 (/.f64 a c)))))
(fma.f64 1/2 (*.f64 (/.f64 a (pow.f64 c 3)) (*.f64 d d)) (-.f64 (fma.f64 (pow.f64 d 6) (fma.f64 1/8 (/.f64 a (pow.f64 c 7)) (/.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 a -3/8) (pow.f64 c 5))))) (*.f64 (pow.f64 d 4) (/.f64 (*.f64 a -3/8) (pow.f64 c 5)))) (/.f64 a c)))
(fma.f64 1/2 (*.f64 (*.f64 d d) (/.f64 a (pow.f64 c 3))) (fma.f64 (pow.f64 d 6) (fma.f64 1/8 (/.f64 a (pow.f64 c 7)) (*.f64 (/.f64 (*.f64 a -3/8) (*.f64 c (pow.f64 c 5))) (/.f64 -1/2 c))) (-.f64 (/.f64 (pow.f64 d 4) (/.f64 (pow.f64 c 5) (*.f64 a -3/8))) (/.f64 a c))))
(*.f64 -1 (/.f64 a d))
(neg.f64 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))
(fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 1/2 (*.f64 a (*.f64 c c))) (pow.f64 d 3)))
(-.f64 (/.f64 1/2 (/.f64 (pow.f64 d 3) (*.f64 a (*.f64 c c)))) (/.f64 a d))
(-.f64 (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (pow.f64 d 3) 1/2)) (/.f64 a d))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 5))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 5))) (+.f64 (*.f64 -1 (/.f64 a d)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))))
(fma.f64 (*.f64 (/.f64 a (pow.f64 d 5)) -3/8) (pow.f64 c 4) (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 1/2 (*.f64 a (*.f64 c c))) (pow.f64 d 3))))
(fma.f64 (*.f64 (/.f64 a (pow.f64 d 5)) -3/8) (pow.f64 c 4) (-.f64 (/.f64 1/2 (/.f64 (pow.f64 d 3) (*.f64 a (*.f64 c c)))) (/.f64 a d)))
(fma.f64 (/.f64 (*.f64 a -3/8) (pow.f64 d 5)) (pow.f64 c 4) (-.f64 (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (pow.f64 d 3) 1/2)) (/.f64 a d)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a)))) (pow.f64 d 7))) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 6) a) (pow.f64 d 7))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))))))
(fma.f64 -1/4 (/.f64 (*.f64 a (pow.f64 c 4)) (pow.f64 d 5)) (fma.f64 -1/8 (/.f64 (*.f64 a (pow.f64 c 4)) (pow.f64 d 5)) (fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 7) (*.f64 (*.f64 a (pow.f64 c 4)) -3/8))) (fma.f64 -1 (/.f64 a d) (fma.f64 1/8 (/.f64 (pow.f64 c 6) (/.f64 (pow.f64 d 7) a)) (/.f64 (*.f64 1/2 (*.f64 a (*.f64 c c))) (pow.f64 d 3)))))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 7)) (*.f64 a (*.f64 (pow.f64 c 4) -3/8))) (-.f64 (fma.f64 1/8 (*.f64 (/.f64 (pow.f64 c 6) (pow.f64 d 7)) a) (/.f64 1/2 (/.f64 (pow.f64 d 3) (*.f64 a (*.f64 c c))))) (/.f64 a d))) (*.f64 (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 d 5)) a) -3/8))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 a (/.f64 (pow.f64 c 6) (pow.f64 d 7))) -3/8) (-.f64 (fma.f64 1/2 (*.f64 a (/.f64 (*.f64 c c) (pow.f64 d 3))) (*.f64 (pow.f64 c 6) (/.f64 a (/.f64 (pow.f64 d 7) 1/8)))) (/.f64 a d))) (*.f64 (/.f64 a (pow.f64 d 5)) (*.f64 (pow.f64 c 4) -3/8)))
(/.f64 a d)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))) (/.f64 a d))
(fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a)) (/.f64 a d))
(fma.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 3)) a) -1/2 (/.f64 a d))
(fma.f64 (*.f64 a (/.f64 (*.f64 c c) (pow.f64 d 3))) -1/2 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a))) (pow.f64 d 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))) (/.f64 a d)))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 a (pow.f64 c 4)) -3/8) (pow.f64 d 5)) (fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a)) (/.f64 a d)))
(-.f64 (fma.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 3)) a) -1/2 (/.f64 a d)) (/.f64 (*.f64 a (pow.f64 c 4)) (/.f64 (pow.f64 d 5) -3/8)))
(+.f64 (fma.f64 (*.f64 a (/.f64 (*.f64 c c) (pow.f64 d 3))) -1/2 (/.f64 a d)) (/.f64 (*.f64 (*.f64 a (pow.f64 c 4)) 3/8) (pow.f64 d 5)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a))) (pow.f64 d 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 c 6) a)) (*.f64 -1/2 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a)))))) (pow.f64 d 7))) (/.f64 a d))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 a (pow.f64 c 4)) -3/8) (pow.f64 d 5)) (fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 3) a)) (fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 a (pow.f64 c 6)) (*.f64 (*.f64 -1/2 (*.f64 c c)) (*.f64 (*.f64 a (pow.f64 c 4)) -3/8))) (pow.f64 d 7)) (/.f64 a d))))
(-.f64 (fma.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 d 3)) a) -1/2 (-.f64 (/.f64 a d) (/.f64 (fma.f64 (*.f64 (*.f64 c c) -1/2) (*.f64 a (*.f64 (pow.f64 c 4) -3/8)) (*.f64 a (*.f64 (pow.f64 c 6) 1/8))) (pow.f64 d 7)))) (/.f64 (*.f64 a (pow.f64 c 4)) (/.f64 (pow.f64 d 5) -3/8)))
(-.f64 (+.f64 (fma.f64 (*.f64 a (/.f64 (*.f64 c c) (pow.f64 d 3))) -1/2 (/.f64 a d)) (/.f64 (*.f64 (*.f64 a (pow.f64 c 4)) 3/8) (pow.f64 d 5))) (/.f64 (fma.f64 (*.f64 c (*.f64 c -1/2)) (*.f64 a (*.f64 (pow.f64 c 4) -3/8)) (*.f64 a (*.f64 (pow.f64 c 6) 1/8))) (pow.f64 d 7)))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 a (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c)))) (neg.f64 a))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 a (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c)))) (neg.f64 a))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 a (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c)))) (neg.f64 a))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 a (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c)))) (neg.f64 a))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 a (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c)))) (neg.f64 a))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 a (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c)))) (neg.f64 a))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 a (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c)))) (neg.f64 a))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 a (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c)))) (neg.f64 a))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 a (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c)))) (neg.f64 a))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 a (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c)))) (neg.f64 a))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 a (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c)))) (neg.f64 a))
(*.f64 -1 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))))
(neg.f64 (*.f64 a (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 a (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 d d (*.f64 c c)))) (neg.f64 a))
(-.f64 0 (/.f64 a (hypot.f64 c d)))
(/.f64 (neg.f64 a) (hypot.f64 c d))
(neg.f64 (/.f64 a (hypot.f64 c d)))
(/.f64 a (neg.f64 (hypot.f64 c d)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 a (hypot.f64 c d)))) 1)
(/.f64 a (hypot.f64 c d))
(-.f64 (/.f64 0 (hypot.f64 c d)) (/.f64 a (hypot.f64 c d)))
(/.f64 (neg.f64 a) (hypot.f64 c d))
(neg.f64 (/.f64 a (hypot.f64 c d)))
(/.f64 a (neg.f64 (hypot.f64 c d)))
(/.f64 1 (/.f64 (hypot.f64 c d) a))
(/.f64 a (hypot.f64 c d))
(/.f64 a (hypot.f64 c d))
(/.f64 a (neg.f64 (hypot.f64 c d)))
(/.f64 (neg.f64 a) (hypot.f64 c d))
(neg.f64 (/.f64 a (hypot.f64 c d)))
(/.f64 (sqrt.f64 a) (/.f64 (hypot.f64 c d) (sqrt.f64 a)))
(*.f64 (/.f64 (sqrt.f64 a) (hypot.f64 c d)) (sqrt.f64 a))
(*.f64 (sqrt.f64 a) (/.f64 (sqrt.f64 a) (hypot.f64 c d)))
(/.f64 (pow.f64 (cbrt.f64 a) 2) (/.f64 (hypot.f64 c d) (cbrt.f64 a)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 a) 2) (hypot.f64 c d)) (cbrt.f64 a))
(*.f64 (cbrt.f64 a) (/.f64 (pow.f64 (cbrt.f64 a) 2) (hypot.f64 c d)))
(/.f64 -1 (/.f64 (hypot.f64 c d) a))
(/.f64 (neg.f64 a) (hypot.f64 c d))
(neg.f64 (/.f64 a (hypot.f64 c d)))
(/.f64 a (neg.f64 (hypot.f64 c d)))
(/.f64 (/.f64 a 1) (hypot.f64 c d))
(/.f64 a (hypot.f64 c d))
(/.f64 (/.f64 a (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 a (hypot.f64 c d))
(/.f64 (/.f64 a (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d)))
(/.f64 a (hypot.f64 c d))
(pow.f64 (/.f64 a (hypot.f64 c d)) 1)
(/.f64 a (hypot.f64 c d))
(pow.f64 (sqrt.f64 (/.f64 a (hypot.f64 c d))) 2)
(/.f64 a (hypot.f64 c d))
(pow.f64 (cbrt.f64 (/.f64 a (hypot.f64 c d))) 3)
(/.f64 a (hypot.f64 c d))
(pow.f64 (pow.f64 (/.f64 a (hypot.f64 c d)) 3) 1/3)
(/.f64 a (hypot.f64 c d))
(neg.f64 (/.f64 a (hypot.f64 c d)))
(/.f64 (neg.f64 a) (hypot.f64 c d))
(/.f64 a (neg.f64 (hypot.f64 c d)))
(sqrt.f64 (pow.f64 (/.f64 a (hypot.f64 c d)) 2))
(fabs.f64 (/.f64 a (hypot.f64 c d)))
(log.f64 (exp.f64 (/.f64 a (hypot.f64 c d))))
(/.f64 a (hypot.f64 c d))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 a (hypot.f64 c d)))))
(/.f64 a (hypot.f64 c d))
(cbrt.f64 (pow.f64 (/.f64 a (hypot.f64 c d)) 3))
(/.f64 a (hypot.f64 c d))
(expm1.f64 (log1p.f64 (/.f64 a (hypot.f64 c d))))
(/.f64 a (hypot.f64 c d))
(exp.f64 (log.f64 (/.f64 a (hypot.f64 c d))))
(/.f64 a (hypot.f64 c d))
(exp.f64 (*.f64 (log.f64 (/.f64 a (hypot.f64 c d))) 1))
(/.f64 a (hypot.f64 c d))
(log1p.f64 (expm1.f64 (/.f64 a (hypot.f64 c d))))
(/.f64 a (hypot.f64 c d))

eval478.0ms (3.5%)

Compiler

Compiled 44207 to 13844 computations (68.7% saved)

prune507.0ms (3.8%)

Pruning

25 alts after pruning (21 fresh and 4 done)

PrunedKeptTotal
New1388151403
Fresh6612
Picked101
Done246
Total1397251422
Accurracy
100.0%
Counts
1422 → 25
Alt Table
Click to see full alt table
StatusAccuracyProgram
21.6%
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
50.2%
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
50.7%
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
40.1%
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
26.7%
(/.f64 (neg.f64 a) (hypot.f64 c d))
42.2%
(/.f64 (neg.f64 a) d)
16.2%
(/.f64 c (/.f64 (*.f64 d d) b))
28.8%
(/.f64 c (/.f64 (*.f64 c c) b))
17.8%
(/.f64 c (/.f64 d (/.f64 b d)))
17.1%
(/.f64 b (/.f64 d (/.f64 c d)))
42.5%
(/.f64 b c)
10.6%
(/.f64 a d)
8.8%
(/.f64 a c)
49.8%
(-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c)))
48.5%
(-.f64 (/.f64 b c) (*.f64 a (/.f64 (/.f64 d c) c)))
17.5%
(*.f64 (/.f64 (/.f64 c d) d) b)
19.3%
(*.f64 (/.f64 c d) (/.f64 b d))
97.8%
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a))))
64.6%
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a)))
29.9%
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 a (/.f64 c d)) (neg.f64 b)))
10.6%
(*.f64 (/.f64 -1 d) (neg.f64 a))
8.8%
(*.f64 (/.f64 -1 c) (neg.f64 a))
42.5%
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
8.6%
(neg.f64 (/.f64 a c))
21.6%
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
Compiler

Compiled 571 to 367 computations (35.7% saved)

localize48.0ms (0.4%)

Local Accuracy

Found 4 expressions with local accuracy:

NewAccuracyProgram
100.0%
(/.f64 (hypot.f64 c d) a)
99.6%
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a))))
88.8%
(/.f64 d (/.f64 (hypot.f64 c d) a))
85.7%
(*.f64 (/.f64 b (hypot.f64 c d)) c)
Compiler

Compiled 77 to 16 computations (79.2% saved)

series7.0ms (0%)

Counts
3 → 120
Calls

30 calls:

TimeVariablePointExpression
1.0ms
d
@inf
(/.f64 (hypot.f64 c d) a)
0.0ms
c
@inf
(/.f64 (hypot.f64 c d) a)
0.0ms
c
@0
(/.f64 (hypot.f64 c d) a)
0.0ms
a
@-inf
(/.f64 (hypot.f64 c d) a)
0.0ms
a
@0
(/.f64 (hypot.f64 c d) a)

rewrite159.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1306×associate-/r/
902×associate-/l/
788×distribute-lft-in
340×add-sqr-sqrt
336×*-un-lft-identity
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01587
133087
2477187
Stop Event
node limit
Counts
3 → 182
Calls
Call 1
Inputs
(/.f64 d (/.f64 (hypot.f64 c d) a))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a))))
(/.f64 (hypot.f64 c d) a)
Outputs
(((-.f64 (exp.f64 (log1p.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) 1) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 d (/.f64 a (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 a (/.f64 d (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 1) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 a (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d)) (*.f64 d a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d)) (*.f64 (/.f64 d 1) a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) (*.f64 (sqrt.f64 d) (/.f64 a (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 a (hypot.f64 c d)))) (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) 2) (*.f64 (cbrt.f64 d) (/.f64 a (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 a (hypot.f64 c d)))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 a (hypot.f64 c d)))) 2) (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (hypot.f64 c d)) a) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 a (hypot.f64 c d)) d) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) (*.f64 -1 (/.f64 a (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 d (hypot.f64 c d)) (sqrt.f64 a)) (sqrt.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 d (hypot.f64 c d)) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a (hypot.f64 c d)))) (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d) a)) 2)) (/.f64 d (cbrt.f64 (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d 1) (/.f64 a (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (sqrt.f64 (hypot.f64 c d))) (/.f64 a (sqrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 a (cbrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d))) (*.f64 d (neg.f64 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (neg.f64 (hypot.f64 c d))) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a (hypot.f64 c d))) (neg.f64 d)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (hypot.f64 c d)) (*.f64 (/.f64 (sqrt.f64 d) 1) a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 1) (/.f64 (sqrt.f64 d) (/.f64 (hypot.f64 c d) a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (/.f64 (hypot.f64 c d) a)) (sqrt.f64 d)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (/.f64 (sqrt.f64 d) (cbrt.f64 (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) (hypot.f64 c d)) (/.f64 (cbrt.f64 d) (/.f64 1 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) 1) (/.f64 (cbrt.f64 d) (/.f64 (hypot.f64 c d) a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) (sqrt.f64 (/.f64 (hypot.f64 c d) a))) (/.f64 (cbrt.f64 d) (sqrt.f64 (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d -1) (neg.f64 (/.f64 a (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (/.f64 (hypot.f64 c d) (sqrt.f64 a))) (sqrt.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (neg.f64 (neg.f64 (hypot.f64 c d)))) (neg.f64 (neg.f64 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d) (*.f64 (sqrt.f64 d) a))) (sqrt.f64 d)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d) (*.f64 (pow.f64 (cbrt.f64 d) 2) a))) (cbrt.f64 d)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) (/.f64 (hypot.f64 c d) a)) (cbrt.f64 d)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) 1) a) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) 1) (/.f64 a 1)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) -1) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) (/.f64 1 (sqrt.f64 a))) (sqrt.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) -1) (/.f64 a (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (neg.f64 (neg.f64 (hypot.f64 c d)))) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 d a) 1) (/.f64 1 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 d a) (sqrt.f64 (hypot.f64 c d))) (pow.f64 (hypot.f64 c d) -1/2)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 d a) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 d a) (neg.f64 (hypot.f64 c d))) -1) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) 1) (/.f64 a (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (sqrt.f64 (hypot.f64 c d))) (/.f64 a (sqrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 a (cbrt.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) -1) (neg.f64 (/.f64 a (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (neg.f64 (hypot.f64 c d))) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (/.f64 (hypot.f64 c d) (sqrt.f64 a))) (sqrt.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (neg.f64 (neg.f64 (hypot.f64 c d)))) (neg.f64 (neg.f64 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))) 1) (sqrt.f64 (/.f64 a (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))) (sqrt.f64 (neg.f64 (hypot.f64 c d)))) (sqrt.f64 (neg.f64 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) 1) (cbrt.f64 (/.f64 a (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (hypot.f64 c d))) (cbrt.f64 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (neg.f64 (hypot.f64 c d)))) (cbrt.f64 (neg.f64 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (hypot.f64 c d))) 1) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (hypot.f64 c d)))) 2) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (hypot.f64 c d)))) 3) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) (*.f64 d a)) -1) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (hypot.f64 c d))) 3) 1/3) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (neg.f64 (hypot.f64 c d))) a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (hypot.f64 c d))) 2)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d) (/.f64 a (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (hypot.f64 c d)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (hypot.f64 c d))) 3)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (hypot.f64 c d)))) 1)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (/.f64 a (hypot.f64 c d))) d (*.f64 d (/.f64 a (hypot.f64 c d)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (hypot.f64 c d)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) (*.f64 d (/.f64 a (hypot.f64 c d)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2) (*.f64 d (/.f64 a (hypot.f64 c d)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) 1))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 a (hypot.f64 c d)) (neg.f64 d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d))))) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d)))) (*.f64 1 (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (/.f64 1 (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))))) 1) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (hypot.f64 c d)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (/.f64 (hypot.f64 c d) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) 2) (/.f64 (hypot.f64 c d) (cbrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c d)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) -1) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (/.f64 1 (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (/.f64 1 (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (*.f64 (hypot.f64 c d) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) (+.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) 3)) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) 3)) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c b) (/.f64 (hypot.f64 c d) a)) (*.f64 (hypot.f64 c d) d)) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (/.f64 (hypot.f64 c d) a)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c b) (/.f64 (hypot.f64 c d) (*.f64 d a))) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (/.f64 (hypot.f64 c d) (*.f64 d a))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c b) (/.f64 (neg.f64 (hypot.f64 c d)) a)) (*.f64 (hypot.f64 c d) (neg.f64 d))) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (/.f64 (neg.f64 (hypot.f64 c d)) a)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (neg.f64 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) 1) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) -1) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (neg.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) 1) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) -1) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (neg.f64 (hypot.f64 c d)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (hypot.f64 c d) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (hypot.f64 c d) (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) 1) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))) 2) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))) 3) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) 3) 1/3) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) 2)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) 3)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) 3)) (pow.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) 3))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) 3) (pow.f64 (hypot.f64 c d) 3))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))) 1)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (hypot.f64 c d) a))) 1) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) (/.f64 1 a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c d) a) 1) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d) a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (hypot.f64 c d)) (*.f64 (sqrt.f64 (hypot.f64 c d)) (/.f64 1 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (hypot.f64 c d) a)) (sqrt.f64 (/.f64 (hypot.f64 c d) a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (hypot.f64 c d)) 2) (*.f64 (cbrt.f64 (hypot.f64 c d)) (/.f64 1 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (hypot.f64 c d) a)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (hypot.f64 c d) a)) 2) (cbrt.f64 (/.f64 (hypot.f64 c d) a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a) (hypot.f64 c d)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c d)) a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (hypot.f64 c d)) (/.f64 1 (neg.f64 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a)) (/.f64 (hypot.f64 c d) (sqrt.f64 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a) 2)) (/.f64 (hypot.f64 c d) (cbrt.f64 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a)) (neg.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (hypot.f64 c d)) 1) (/.f64 (sqrt.f64 (hypot.f64 c d)) a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (hypot.f64 c d)) 2) 1) (/.f64 (cbrt.f64 (hypot.f64 c d)) a)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (hypot.f64 c d)) a) (sqrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (hypot.f64 c d)) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (hypot.f64 c d)) (cbrt.f64 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (hypot.f64 c d)) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (hypot.f64 c d)) (sqrt.f64 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (hypot.f64 c d)) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (/.f64 (hypot.f64 c d) a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a (sqrt.f64 (hypot.f64 c d)))) (sqrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2))) (cbrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2))) (cbrt.f64 (/.f64 (hypot.f64 c d) a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 (hypot.f64 c d)) 2) a) (cbrt.f64 (hypot.f64 c d))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c d) a) 1) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) a)) 2) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) a)) 3) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) a) 3) 1/3) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (hypot.f64 c d)) -1) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) (neg.f64 a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) a) 2)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) a)))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) a) 3)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) 3) (pow.f64 a 3))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) a)) 1)) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (hypot.f64 c d) a))) #(struct:egraph-query ((/.f64 d (/.f64 (hypot.f64 c d) a)) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a)))) (/.f64 (hypot.f64 c d) a)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify150.0ms (1.1%)

Algorithm
egg-herbie
Rules
1296×associate-*r*
1050×associate-/r*
1042×associate-*l*
1028×*-commutative
988×associate-/l*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
075916972
1244016746
Stop Event
node limit
Counts
302 → 418
Calls
Call 1
Inputs
(/.f64 (*.f64 a d) c)
(+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 d 5))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3)))))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 d 5))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 d 7) (+.f64 (*.f64 1/8 (/.f64 a (pow.f64 c 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 c 2)))))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
a
(+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))))
(+.f64 a (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a))) (pow.f64 d 4))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 c 6) a)) (*.f64 -1/2 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a)))))) (pow.f64 d 6))) (+.f64 a (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a))) (pow.f64 d 4))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))))))
(*.f64 -1 a)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (*.f64 -1 a))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a)))) (pow.f64 d 6))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 6) a) (pow.f64 d 6))) (*.f64 -1 a))))))
a
(+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 -1/8 (/.f64 a (pow.f64 d 4))) (*.f64 -1/4 (/.f64 a (pow.f64 d 4)))))) (+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 -1/8 (/.f64 a (pow.f64 d 4))) (*.f64 -1/4 (/.f64 a (pow.f64 d 4)))))) (+.f64 a (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 (*.f64 (pow.f64 c 6) (+.f64 (*.f64 1/8 (/.f64 a (pow.f64 d 6))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 a (pow.f64 d 4))) (*.f64 -1/4 (/.f64 a (pow.f64 d 4)))) (pow.f64 d 2)))))))))
(/.f64 (*.f64 a d) c)
(+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5)))) (pow.f64 c 5))) (+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5)))) (pow.f64 c 5))) (+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 a (pow.f64 d 7))) (*.f64 -1/2 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5))))))) (pow.f64 c 7))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(*.f64 -1 (/.f64 (*.f64 a d) c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))) (*.f64 -1/8 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 a (pow.f64 d 7)) (pow.f64 c 7))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5))))) (pow.f64 c 7))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))) (*.f64 -1/8 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 (pow.f64 c 2) (-.f64 (*.f64 1/2 (/.f64 a (pow.f64 d 3))) (*.f64 -1/2 (/.f64 a (pow.f64 d 3))))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(+.f64 (*.f64 (pow.f64 c 3) (-.f64 (*.f64 -1/2 (/.f64 b (pow.f64 d 4))) (*.f64 1/2 (/.f64 b (pow.f64 d 4))))) (+.f64 (*.f64 (pow.f64 c 2) (-.f64 (*.f64 1/2 (/.f64 a (pow.f64 d 3))) (*.f64 -1/2 (/.f64 a (pow.f64 d 3))))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 b c) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 d 2) b)) (*.f64 -1/2 (*.f64 (pow.f64 d 2) b))) (pow.f64 c 3))) (/.f64 b c)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 d 2) b)) (*.f64 -1/2 (*.f64 (pow.f64 d 2) b))) (pow.f64 c 3))) (+.f64 (/.f64 b c) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)))))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 b c) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 b (pow.f64 c 3))) (*.f64 1/2 (/.f64 b (pow.f64 c 3)))) (pow.f64 d 2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 a (pow.f64 c 4))) (*.f64 -1/2 (/.f64 a (pow.f64 c 4)))) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 b c) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 b (pow.f64 c 3))) (*.f64 1/2 (/.f64 b (pow.f64 c 3)))) (pow.f64 d 2)))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)))))
(*.f64 -1 (/.f64 a d))
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 1/2 (*.f64 (pow.f64 c 2) a))) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 1/2 (*.f64 (pow.f64 c 2) a))) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(/.f64 d a)
(+.f64 (/.f64 d a) (*.f64 1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))))
(+.f64 (/.f64 d a) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))) (*.f64 -1/8 (/.f64 (pow.f64 c 4) (*.f64 a (pow.f64 d 3))))))
(+.f64 (/.f64 d a) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 c 6) (*.f64 a (pow.f64 d 5)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))) (*.f64 -1/8 (/.f64 (pow.f64 c 4) (*.f64 a (pow.f64 d 3)))))))
(/.f64 c a)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (/.f64 c a))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (+.f64 (/.f64 c a) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) a)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 d 6) (*.f64 (pow.f64 c 5) a))) (+.f64 (/.f64 c a) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) a))))))
(*.f64 -1 (/.f64 c a))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (*.f64 -1 (/.f64 c a)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (+.f64 (*.f64 -1 (/.f64 c a)) (*.f64 1/8 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) a)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (+.f64 (*.f64 -1 (/.f64 c a)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 d 6) (*.f64 (pow.f64 c 5) a))) (*.f64 1/8 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) a))))))
(/.f64 c a)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (/.f64 c a))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (+.f64 (/.f64 c a) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) a)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 d 6) (*.f64 (pow.f64 c 5) a))) (+.f64 (/.f64 c a) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) a))))))
(/.f64 d a)
(+.f64 (/.f64 d a) (*.f64 1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))))
(+.f64 (/.f64 d a) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))) (*.f64 -1/8 (/.f64 (pow.f64 c 4) (*.f64 a (pow.f64 d 3))))))
(+.f64 (/.f64 d a) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 c 6) (*.f64 a (pow.f64 d 5)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))) (*.f64 -1/8 (/.f64 (pow.f64 c 4) (*.f64 a (pow.f64 d 3)))))))
(*.f64 -1 (/.f64 d a))
(+.f64 (*.f64 -1 (/.f64 d a)) (*.f64 -1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))))
(+.f64 (*.f64 -1 (/.f64 d a)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))) (*.f64 1/8 (/.f64 (pow.f64 c 4) (*.f64 a (pow.f64 d 3))))))
(+.f64 (*.f64 -1 (/.f64 d a)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 c 6) (*.f64 a (pow.f64 d 5)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))) (*.f64 1/8 (/.f64 (pow.f64 c 4) (*.f64 a (pow.f64 d 3)))))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) 1)
(*.f64 d (/.f64 a (hypot.f64 c d)))
(*.f64 a (/.f64 d (hypot.f64 c d)))
(*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 1)
(*.f64 1 (*.f64 d (/.f64 a (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 d a))
(*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 d 1) a))
(*.f64 (sqrt.f64 d) (*.f64 (sqrt.f64 d) (/.f64 a (hypot.f64 c d))))
(*.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (cbrt.f64 d) (/.f64 a (hypot.f64 c d))))
(*.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2) (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))))
(*.f64 (/.f64 d (hypot.f64 c d)) a)
(*.f64 (/.f64 a (hypot.f64 c d)) d)
(*.f64 (neg.f64 d) (*.f64 -1 (/.f64 a (hypot.f64 c d))))
(*.f64 (*.f64 (/.f64 d (hypot.f64 c d)) (sqrt.f64 a)) (sqrt.f64 a))
(*.f64 (*.f64 (/.f64 d (hypot.f64 c d)) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))
(*.f64 (*.f64 1 (sqrt.f64 (/.f64 a (hypot.f64 c d)))) (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (/.f64 d (cbrt.f64 (/.f64 (hypot.f64 c d) a))))
(*.f64 (/.f64 d 1) (/.f64 a (hypot.f64 c d)))
(*.f64 (/.f64 d (sqrt.f64 (hypot.f64 c d))) (/.f64 a (sqrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 d (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 a (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 c d))) (*.f64 d (neg.f64 a)))
(*.f64 (/.f64 d (neg.f64 (hypot.f64 c d))) (neg.f64 a))
(*.f64 (*.f64 -1 (/.f64 a (hypot.f64 c d))) (neg.f64 d))
(*.f64 (/.f64 (sqrt.f64 d) (hypot.f64 c d)) (*.f64 (/.f64 (sqrt.f64 d) 1) a))
(*.f64 (/.f64 (sqrt.f64 d) 1) (/.f64 (sqrt.f64 d) (/.f64 (hypot.f64 c d) a)))
(*.f64 (/.f64 (sqrt.f64 d) (/.f64 (hypot.f64 c d) a)) (sqrt.f64 d))
(*.f64 (/.f64 (sqrt.f64 d) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (/.f64 (sqrt.f64 d) (cbrt.f64 (/.f64 (hypot.f64 c d) a))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (hypot.f64 c d)) (/.f64 (cbrt.f64 d) (/.f64 1 a)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) 1) (/.f64 (cbrt.f64 d) (/.f64 (hypot.f64 c d) a)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (sqrt.f64 (/.f64 (hypot.f64 c d) a))) (/.f64 (cbrt.f64 d) (sqrt.f64 (/.f64 (hypot.f64 c d) a))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))))
(*.f64 (/.f64 d -1) (neg.f64 (/.f64 a (hypot.f64 c d))))
(*.f64 (/.f64 d (/.f64 (hypot.f64 c d) (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 d (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (/.f64 d (neg.f64 (neg.f64 (hypot.f64 c d)))) (neg.f64 (neg.f64 a)))
(*.f64 (/.f64 1 (/.f64 (hypot.f64 c d) (*.f64 (sqrt.f64 d) a))) (sqrt.f64 d))
(*.f64 (/.f64 1 (/.f64 (hypot.f64 c d) (*.f64 (pow.f64 (cbrt.f64 d) 2) a))) (cbrt.f64 d))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 (hypot.f64 c d) a)) (cbrt.f64 d))
(*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) 1) a)
(*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) 1) (/.f64 a 1))
(*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) -1) (neg.f64 a))
(*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) (/.f64 1 (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (/.f64 (neg.f64 d) -1) (/.f64 a (hypot.f64 c d)))
(*.f64 (/.f64 (neg.f64 d) (neg.f64 (neg.f64 (hypot.f64 c d)))) (neg.f64 a))
(*.f64 (/.f64 (*.f64 d a) 1) (/.f64 1 (hypot.f64 c d)))
(*.f64 (/.f64 (*.f64 d a) (sqrt.f64 (hypot.f64 c d))) (pow.f64 (hypot.f64 c d) -1/2))
(*.f64 (/.f64 (*.f64 d a) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (/.f64 1 (hypot.f64 c d))))
(*.f64 (/.f64 (*.f64 d a) (neg.f64 (hypot.f64 c d))) -1)
(*.f64 (/.f64 (/.f64 d 1) 1) (/.f64 a (hypot.f64 c d)))
(*.f64 (/.f64 (/.f64 d 1) (sqrt.f64 (hypot.f64 c d))) (/.f64 a (sqrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 (/.f64 d 1) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 a (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 (/.f64 d 1) -1) (neg.f64 (/.f64 a (hypot.f64 c d))))
(*.f64 (/.f64 (/.f64 d 1) (neg.f64 (hypot.f64 c d))) (neg.f64 a))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 (hypot.f64 c d) (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (/.f64 (/.f64 d 1) (neg.f64 (neg.f64 (hypot.f64 c d)))) (neg.f64 (neg.f64 a)))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))) 1) (sqrt.f64 (/.f64 a (hypot.f64 c d))))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 a))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))) (sqrt.f64 (neg.f64 (hypot.f64 c d)))) (sqrt.f64 (neg.f64 a)))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) 1) (cbrt.f64 (/.f64 a (hypot.f64 c d))))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (hypot.f64 c d))) (cbrt.f64 a))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (neg.f64 (hypot.f64 c d)))) (cbrt.f64 (neg.f64 a)))
(pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 1)
(pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2)
(pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 3)
(pow.f64 (/.f64 (hypot.f64 c d) (*.f64 d a)) -1)
(pow.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) 1/3)
(neg.f64 (*.f64 (/.f64 d (neg.f64 (hypot.f64 c d))) a))
(sqrt.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))
(log.f64 (pow.f64 (exp.f64 d) (/.f64 a (hypot.f64 c d))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))))
(cbrt.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))
(expm1.f64 (log1p.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))))
(exp.f64 (log.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))))
(exp.f64 (*.f64 (log.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 1))
(log1p.f64 (expm1.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (/.f64 a (hypot.f64 c d))) d (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) 1)))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))))
(+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (/.f64 1 (hypot.f64 c d))))
(+.f64 (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))))
(+.f64 (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d))))) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))
(+.f64 (*.f64 1 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d)))) (*.f64 1 (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (/.f64 1 (hypot.f64 c d)))))
(-.f64 (exp.f64 (log1p.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))))) 1)
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))
(/.f64 1 (/.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))
(/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (hypot.f64 c d))
(/.f64 (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (/.f64 (hypot.f64 c d) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))))
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) 2) (/.f64 (hypot.f64 c d) (cbrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) -1) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 -1 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (neg.f64 (hypot.f64 c d)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (/.f64 1 (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (/.f64 1 (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (*.f64 (hypot.f64 c d) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) (+.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))))
(/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) 3)) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) 3)) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))))))
(/.f64 (-.f64 (*.f64 (*.f64 c b) (/.f64 (hypot.f64 c d) a)) (*.f64 (hypot.f64 c d) d)) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (/.f64 (hypot.f64 c d) a))))
(/.f64 (-.f64 (*.f64 (*.f64 c b) (/.f64 (hypot.f64 c d) (*.f64 d a))) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (/.f64 (hypot.f64 c d) (*.f64 d a)))))
(/.f64 (-.f64 (*.f64 (*.f64 c b) (/.f64 (neg.f64 (hypot.f64 c d)) a)) (*.f64 (hypot.f64 c d) (neg.f64 d))) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (/.f64 (neg.f64 (hypot.f64 c d)) a))))
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (neg.f64 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) 1) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) -1) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (neg.f64 (hypot.f64 c d))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) 1) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (hypot.f64 c d)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) -1) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (neg.f64 (hypot.f64 c d))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (hypot.f64 c d) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (hypot.f64 c d) (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))))
(/.f64 (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (neg.f64 (hypot.f64 c d)))
(pow.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) 1)
(pow.f64 (sqrt.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))) 2)
(pow.f64 (cbrt.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))) 3)
(pow.f64 (pow.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) 3) 1/3)
(sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) 2))
(log.f64 (exp.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))))
(log.f64 (+.f64 1 (expm1.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))))))
(cbrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) 3))
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) (pow.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (/.f64 (pow.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) 3) (pow.f64 (hypot.f64 c d) 3)))
(expm1.f64 (log1p.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))))
(exp.f64 (log.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))))
(exp.f64 (*.f64 (log.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))) 1))
(log1p.f64 (expm1.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (hypot.f64 c d) a))) 1)
(*.f64 (hypot.f64 c d) (/.f64 1 a))
(*.f64 (/.f64 (hypot.f64 c d) a) 1)
(*.f64 1 (/.f64 (hypot.f64 c d) a))
(*.f64 (sqrt.f64 (hypot.f64 c d)) (*.f64 (sqrt.f64 (hypot.f64 c d)) (/.f64 1 a)))
(*.f64 (sqrt.f64 (/.f64 (hypot.f64 c d) a)) (sqrt.f64 (/.f64 (hypot.f64 c d) a)))
(*.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (*.f64 (cbrt.f64 (hypot.f64 c d)) (/.f64 1 a)))
(*.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2) (cbrt.f64 (/.f64 (hypot.f64 c d) a)))
(*.f64 (/.f64 1 a) (hypot.f64 c d))
(*.f64 -1 (/.f64 (neg.f64 (hypot.f64 c d)) a))
(*.f64 (neg.f64 (hypot.f64 c d)) (/.f64 1 (neg.f64 a)))
(*.f64 (/.f64 1 (sqrt.f64 a)) (/.f64 (hypot.f64 c d) (sqrt.f64 a)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 a) 2)) (/.f64 (hypot.f64 c d) (cbrt.f64 a)))
(*.f64 (/.f64 1 (neg.f64 a)) (neg.f64 (hypot.f64 c d)))
(*.f64 (/.f64 (sqrt.f64 (hypot.f64 c d)) 1) (/.f64 (sqrt.f64 (hypot.f64 c d)) a))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) 1) (/.f64 (cbrt.f64 (hypot.f64 c d)) a))
(*.f64 (/.f64 (sqrt.f64 (hypot.f64 c d)) a) (sqrt.f64 (hypot.f64 c d)))
(*.f64 (/.f64 (sqrt.f64 (hypot.f64 c d)) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (hypot.f64 c d)) (cbrt.f64 a)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (hypot.f64 c d)) (sqrt.f64 a)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (/.f64 (hypot.f64 c d) a)))
(*.f64 (/.f64 1 (/.f64 a (sqrt.f64 (hypot.f64 c d)))) (sqrt.f64 (hypot.f64 c d)))
(*.f64 (/.f64 1 (/.f64 a (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2))) (cbrt.f64 (hypot.f64 c d)))
(*.f64 (/.f64 1 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2))) (cbrt.f64 (/.f64 (hypot.f64 c d) a)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) a) (cbrt.f64 (hypot.f64 c d)))
(pow.f64 (/.f64 (hypot.f64 c d) a) 1)
(pow.f64 (sqrt.f64 (/.f64 (hypot.f64 c d) a)) 2)
(pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 3)
(pow.f64 (pow.f64 (/.f64 (hypot.f64 c d) a) 3) 1/3)
(pow.f64 (/.f64 a (hypot.f64 c d)) -1)
(neg.f64 (/.f64 (hypot.f64 c d) (neg.f64 a)))
(sqrt.f64 (pow.f64 (/.f64 (hypot.f64 c d) a) 2))
(log.f64 (exp.f64 (/.f64 (hypot.f64 c d) a)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (hypot.f64 c d) a))))
(cbrt.f64 (pow.f64 (/.f64 (hypot.f64 c d) a) 3))
(cbrt.f64 (/.f64 (pow.f64 (hypot.f64 c d) 3) (pow.f64 a 3)))
(expm1.f64 (log1p.f64 (/.f64 (hypot.f64 c d) a)))
(exp.f64 (log.f64 (/.f64 (hypot.f64 c d) a)))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 c d) a)) 1))
(log1p.f64 (expm1.f64 (/.f64 (hypot.f64 c d) a)))
Outputs
(/.f64 (*.f64 a d) c)
(/.f64 a (/.f64 c d))
(*.f64 (/.f64 a c) d)
(+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))
(+.f64 (/.f64 a (/.f64 c d)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))
(+.f64 (*.f64 (/.f64 a c) d) (/.f64 (*.f64 a -1/2) (/.f64 (pow.f64 c 3) (pow.f64 d 3))))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 d 5))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3)))))
(+.f64 (/.f64 a (/.f64 c d)) (fma.f64 -1 (*.f64 (*.f64 (/.f64 a (pow.f64 c 5)) -3/8) (pow.f64 d 5)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))))))
(+.f64 (*.f64 (/.f64 a c) d) (fma.f64 -1 (*.f64 (/.f64 a (pow.f64 c 5)) (*.f64 -3/8 (pow.f64 d 5))) (/.f64 (*.f64 a -1/2) (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))
(+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 d 5))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 d 7) (+.f64 (*.f64 1/8 (/.f64 a (pow.f64 c 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 a (pow.f64 c 5))) (*.f64 -1/8 (/.f64 a (pow.f64 c 5)))) (pow.f64 c 2)))))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(+.f64 (/.f64 a (/.f64 c d)) (fma.f64 -1 (*.f64 (*.f64 (/.f64 a (pow.f64 c 5)) -3/8) (pow.f64 d 5)) (fma.f64 -1 (*.f64 (pow.f64 d 7) (fma.f64 1/8 (/.f64 a (pow.f64 c 7)) (*.f64 -1/2 (/.f64 (*.f64 (/.f64 a (pow.f64 c 5)) -3/8) (*.f64 c c))))) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))))
(+.f64 (*.f64 (/.f64 a c) d) (fma.f64 -1 (*.f64 (/.f64 a (pow.f64 c 5)) (*.f64 -3/8 (pow.f64 d 5))) (fma.f64 -1 (*.f64 (pow.f64 d 7) (fma.f64 1/8 (/.f64 a (pow.f64 c 7)) (*.f64 -1/2 (/.f64 (/.f64 (*.f64 a -3/8) (pow.f64 c 5)) (*.f64 c c))))) (/.f64 (*.f64 a -1/2) (/.f64 (pow.f64 c 3) (pow.f64 d 3))))))
a
(+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))))
(+.f64 a (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a))))
(+.f64 a (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (*.f64 d d) -1/2)))
(+.f64 a (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a))) (pow.f64 d 4))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2)))))
(+.f64 a (fma.f64 -1 (/.f64 (*.f64 (*.f64 a (pow.f64 c 4)) -3/8) (pow.f64 d 4)) (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)))))
(+.f64 a (fma.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (*.f64 a -3/8)) (pow.f64 d 4)) (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (*.f64 d d) -1/2))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 c 6) a)) (*.f64 -1/2 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a)))))) (pow.f64 d 6))) (+.f64 a (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a))) (pow.f64 d 4))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))))))
(fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 a (pow.f64 c 6)) (*.f64 -1/2 (*.f64 (*.f64 c c) (*.f64 (*.f64 a (pow.f64 c 4)) -3/8)))) (pow.f64 d 6)) (+.f64 a (fma.f64 -1 (/.f64 (*.f64 (*.f64 a (pow.f64 c 4)) -3/8) (pow.f64 d 4)) (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a))))))
(fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 a (pow.f64 c 6)) (*.f64 (*.f64 (pow.f64 c 4) (*.f64 a -3/8)) (*.f64 -1/2 (*.f64 c c)))) (pow.f64 d 6)) (+.f64 a (fma.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (*.f64 a -3/8)) (pow.f64 d 4)) (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (*.f64 d d) -1/2)))))
(*.f64 -1 a)
(neg.f64 a)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 a))
(fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 a))
(fma.f64 1/2 (/.f64 a (/.f64 (*.f64 d d) (*.f64 c c))) (neg.f64 a))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (*.f64 -1 a))))
(fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (fma.f64 -1/8 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 d 4) a)) (fma.f64 -1/4 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 d 4) a)) (neg.f64 a))))
(+.f64 (*.f64 (pow.f64 c 4) (/.f64 (*.f64 a -3/8) (pow.f64 d 4))) (fma.f64 1/2 (/.f64 a (/.f64 (*.f64 d d) (*.f64 c c))) (neg.f64 a)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 4) a)) (*.f64 -1/4 (*.f64 (pow.f64 c 4) a)))) (pow.f64 d 6))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) a) (pow.f64 d 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 6) a) (pow.f64 d 6))) (*.f64 -1 a))))))
(fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 d 6) (*.f64 (*.f64 a (pow.f64 c 4)) -3/8))) (fma.f64 1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (fma.f64 -1/4 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 d 4) a)) (fma.f64 -1/8 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 d 4) a)) (fma.f64 1/8 (/.f64 (*.f64 a (pow.f64 c 6)) (pow.f64 d 6)) (neg.f64 a))))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 c c) (*.f64 (pow.f64 c 4) (*.f64 a -3/8))) (pow.f64 d 6)) (fma.f64 1/2 (/.f64 a (/.f64 (*.f64 d d) (*.f64 c c))) (+.f64 (fma.f64 1/8 (/.f64 a (/.f64 (pow.f64 d 6) (pow.f64 c 6))) (neg.f64 a)) (*.f64 (pow.f64 c 4) (/.f64 (*.f64 a -3/8) (pow.f64 d 4))))))
a
(+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))))
(+.f64 a (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a))))
(+.f64 a (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (*.f64 d d) -1/2)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 -1/8 (/.f64 a (pow.f64 d 4))) (*.f64 -1/4 (/.f64 a (pow.f64 d 4)))))) (+.f64 a (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2)))))
(fma.f64 -1 (*.f64 (pow.f64 c 4) (*.f64 (/.f64 a (pow.f64 d 4)) -3/8)) (+.f64 a (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)))))
(fma.f64 -1 (*.f64 (pow.f64 c 4) (/.f64 (*.f64 a -3/8) (pow.f64 d 4))) (+.f64 a (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (*.f64 d d) -1/2))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 -1/8 (/.f64 a (pow.f64 d 4))) (*.f64 -1/4 (/.f64 a (pow.f64 d 4)))))) (+.f64 a (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 2))) (*.f64 -1 (*.f64 (pow.f64 c 6) (+.f64 (*.f64 1/8 (/.f64 a (pow.f64 d 6))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 a (pow.f64 d 4))) (*.f64 -1/4 (/.f64 a (pow.f64 d 4)))) (pow.f64 d 2)))))))))
(fma.f64 -1 (*.f64 (pow.f64 c 4) (*.f64 (/.f64 a (pow.f64 d 4)) -3/8)) (+.f64 a (fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (*.f64 d d) a)) (neg.f64 (*.f64 (pow.f64 c 6) (fma.f64 1/8 (/.f64 a (pow.f64 d 6)) (*.f64 -1/2 (/.f64 (*.f64 (/.f64 a (pow.f64 d 4)) -3/8) (*.f64 d d)))))))))
(fma.f64 -1 (*.f64 (pow.f64 c 4) (/.f64 (*.f64 a -3/8) (pow.f64 d 4))) (+.f64 a (fma.f64 -1/2 (/.f64 a (/.f64 (*.f64 d d) (*.f64 c c))) (neg.f64 (*.f64 (pow.f64 c 6) (fma.f64 1/8 (/.f64 a (pow.f64 d 6)) (/.f64 (*.f64 -1/2 (/.f64 (*.f64 a -3/8) (pow.f64 d 4))) (*.f64 d d))))))))
(/.f64 (*.f64 a d) c)
(/.f64 a (/.f64 c d))
(*.f64 (/.f64 a c) d)
(+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))
(+.f64 (/.f64 a (/.f64 c d)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))
(+.f64 (*.f64 (/.f64 a c) d) (/.f64 (*.f64 a -1/2) (/.f64 (pow.f64 c 3) (pow.f64 d 3))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5)))) (pow.f64 c 5))) (+.f64 (/.f64 (*.f64 a d) c) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3)))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 a (pow.f64 d 5)) -3/8) (pow.f64 c 5)) (+.f64 (/.f64 a (/.f64 c d)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))))))
(fma.f64 -1 (/.f64 (*.f64 a (pow.f64 d 5)) (/.f64 (pow.f64 c 5) -3/8)) (+.f64 (*.f64 (/.f64 a c) d) (/.f64 (*.f64 a -1/2) (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5)))) (pow.f64 c 5))) (+.f64 (/.f64 (*.f64 a d) c) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 a (pow.f64 d 7))) (*.f64 -1/2 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5))))))) (pow.f64 c 7))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 a (pow.f64 d 5)) -3/8) (pow.f64 c 5)) (+.f64 (/.f64 a (/.f64 c d)) (fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 a (pow.f64 d 7)) (*.f64 (*.f64 -1/2 (*.f64 d d)) (*.f64 (*.f64 a (pow.f64 d 5)) -3/8))) (pow.f64 c 7)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3)))))))
(fma.f64 -1 (/.f64 (*.f64 a (pow.f64 d 5)) (/.f64 (pow.f64 c 5) -3/8)) (+.f64 (*.f64 (/.f64 a c) d) (fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 a (pow.f64 d 7)) (*.f64 (*.f64 d d) (*.f64 (*.f64 (pow.f64 d 5) (*.f64 a -3/8)) -1/2))) (pow.f64 c 7)) (/.f64 (*.f64 a -1/2) (/.f64 (pow.f64 c 3) (pow.f64 d 3))))))
(*.f64 -1 (/.f64 (*.f64 a d) c))
(neg.f64 (/.f64 a (/.f64 c d)))
(/.f64 (neg.f64 a) (/.f64 c d))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))))
(fma.f64 -1 (/.f64 a (/.f64 c d)) (*.f64 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))) 1/2))
(fma.f64 -1 (*.f64 (/.f64 a c) d) (/.f64 (*.f64 a 1/2) (/.f64 (pow.f64 c 3) (pow.f64 d 3))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))) (*.f64 -1/8 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))))))
(fma.f64 -1/4 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 5))) (fma.f64 -1 (/.f64 a (/.f64 c d)) (fma.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))) (*.f64 -1/8 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 5)))))))
(fma.f64 -1/4 (*.f64 (/.f64 a (pow.f64 c 5)) (pow.f64 d 5)) (fma.f64 -1 (*.f64 (/.f64 a c) d) (fma.f64 1/2 (*.f64 (/.f64 a (pow.f64 c 3)) (pow.f64 d 3)) (*.f64 -1/8 (*.f64 (/.f64 a (pow.f64 c 5)) (pow.f64 d 5))))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 a (pow.f64 d 7)) (pow.f64 c 7))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) (+.f64 (*.f64 -1/8 (*.f64 a (pow.f64 d 5))) (*.f64 -1/4 (*.f64 a (pow.f64 d 5))))) (pow.f64 c 7))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 3))) (*.f64 -1/8 (/.f64 (*.f64 a (pow.f64 d 5)) (pow.f64 c 5))))))))
(fma.f64 -1/4 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 5))) (fma.f64 1/8 (/.f64 a (/.f64 (pow.f64 c 7) (pow.f64 d 7))) (fma.f64 -1 (/.f64 a (/.f64 c d)) (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 7) (*.f64 (*.f64 a (pow.f64 d 5)) -3/8))) (fma.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 3) (pow.f64 d 3))) (*.f64 -1/8 (/.f64 a (/.f64 (pow.f64 c 5) (pow.f64 d 5)))))))))
(fma.f64 -1/4 (*.f64 (/.f64 a (pow.f64 c 5)) (pow.f64 d 5)) (fma.f64 1/8 (*.f64 (/.f64 a (pow.f64 c 7)) (pow.f64 d 7)) (fma.f64 -1 (*.f64 (/.f64 a c) d) (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 d d) (pow.f64 c 7)) (*.f64 (pow.f64 d 5) (*.f64 a -3/8))) (fma.f64 1/2 (*.f64 (/.f64 a (pow.f64 c 3)) (pow.f64 d 3)) (*.f64 -1/8 (*.f64 (/.f64 a (pow.f64 c 5)) (pow.f64 d 5))))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 a (*.f64 d (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 a (*.f64 d (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 a (*.f64 d (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 a (*.f64 d (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 a (*.f64 d (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 a (*.f64 d (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 a (*.f64 d (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 a (*.f64 d (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 a (*.f64 d (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 a (*.f64 d (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 a (*.f64 d (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 (*.f64 a d) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(*.f64 a (*.f64 d (sqrt.f64 (/.f64 1 (+.f64 (*.f64 c c) (*.f64 d d))))))
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d)))
(+.f64 (*.f64 (pow.f64 c 2) (-.f64 (*.f64 1/2 (/.f64 a (pow.f64 d 3))) (*.f64 -1/2 (/.f64 a (pow.f64 d 3))))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(fma.f64 (*.f64 c c) (*.f64 (/.f64 a (pow.f64 d 3)) 1) (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d))))
(fma.f64 (*.f64 c c) (/.f64 (*.f64 a 1) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d))))
(+.f64 (*.f64 (pow.f64 c 3) (-.f64 (*.f64 -1/2 (/.f64 b (pow.f64 d 4))) (*.f64 1/2 (/.f64 b (pow.f64 d 4))))) (+.f64 (*.f64 (pow.f64 c 2) (-.f64 (*.f64 1/2 (/.f64 a (pow.f64 d 3))) (*.f64 -1/2 (/.f64 a (pow.f64 d 3))))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))))
(fma.f64 (pow.f64 c 3) (*.f64 (/.f64 b (pow.f64 d 4)) -1) (fma.f64 (*.f64 c c) (*.f64 (/.f64 a (pow.f64 d 3)) 1) (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d)))))
(fma.f64 (pow.f64 c 3) (*.f64 -1 (/.f64 b (pow.f64 d 4))) (fma.f64 (*.f64 c c) (/.f64 (*.f64 a 1) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 a (*.f64 c c)) d) (/.f64 b c))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c))) (*.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b))))
(+.f64 (/.f64 (*.f64 (*.f64 d d) b) (/.f64 (pow.f64 c 3) -1/2)) (fma.f64 -1/2 (/.f64 d (/.f64 (/.f64 (pow.f64 c 3) b) d)) (fma.f64 -1 (*.f64 (/.f64 a (*.f64 c c)) d) (/.f64 b c))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 b c) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 d 2) b) (pow.f64 c 3))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (+.f64 (fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c)) (*.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 4) (pow.f64 d 3)))))) (fma.f64 1/2 (/.f64 (*.f64 d d) (/.f64 (pow.f64 c 3) b)) (*.f64 -1/2 (/.f64 a (/.f64 (pow.f64 c 4) (pow.f64 d 3))))))
(-.f64 (+.f64 (fma.f64 -1/2 (/.f64 d (/.f64 (/.f64 (pow.f64 c 3) b) d)) (fma.f64 -1 (*.f64 (/.f64 a (*.f64 c c)) d) (/.f64 b c))) (*.f64 1/2 (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3)))) (fma.f64 1/2 (/.f64 d (/.f64 (/.f64 (pow.f64 c 3) b) d)) (*.f64 -1/2 (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 a (*.f64 c c)) d) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 d 2) b)) (*.f64 -1/2 (*.f64 (pow.f64 d 2) b))) (pow.f64 c 3))) (/.f64 b c)))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 d d) b) 1) (pow.f64 c 3)) (/.f64 b c)))
(fma.f64 -1 (*.f64 (/.f64 a (*.f64 c c)) d) (fma.f64 -1 (/.f64 (*.f64 (*.f64 d d) b) (/.f64 (pow.f64 c 3) 1)) (/.f64 b c)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 d 2) b)) (*.f64 -1/2 (*.f64 (pow.f64 d 2) b))) (pow.f64 c 3))) (+.f64 (/.f64 b c) (*.f64 1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4)))))) (*.f64 -1/2 (/.f64 (*.f64 a (pow.f64 d 3)) (pow.f64 c 4))))
(+.f64 (fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (+.f64 (fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 d d) b) 1) (pow.f64 c 3)) (/.f64 b c)) (*.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 4) (pow.f64 d 3)))))) (*.f64 1/2 (/.f64 a (/.f64 (pow.f64 c 4) (pow.f64 d 3)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3))) (+.f64 (fma.f64 -1 (*.f64 (/.f64 a (*.f64 c c)) d) (fma.f64 -1 (/.f64 (*.f64 (*.f64 d d) b) (/.f64 (pow.f64 c 3) 1)) (/.f64 b c))) (*.f64 1/2 (*.f64 (/.f64 a (pow.f64 c 4)) (pow.f64 d 3)))))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c))
(fma.f64 -1 (*.f64 (/.f64 a (*.f64 c c)) d) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 b c) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 b (pow.f64 c 3))) (*.f64 1/2 (/.f64 b (pow.f64 c 3)))) (pow.f64 d 2))))
(+.f64 (fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c)) (*.f64 (*.f64 d d) (*.f64 (/.f64 b (pow.f64 c 3)) -1)))
(+.f64 (fma.f64 -1 (*.f64 (/.f64 a (*.f64 c c)) d) (/.f64 b c)) (*.f64 (*.f64 (*.f64 d d) (/.f64 b (pow.f64 c 3))) -1))
(+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 a (pow.f64 c 4))) (*.f64 -1/2 (/.f64 a (pow.f64 c 4)))) (pow.f64 d 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (+.f64 (/.f64 b c) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 b (pow.f64 c 3))) (*.f64 1/2 (/.f64 b (pow.f64 c 3)))) (pow.f64 d 2)))))
(fma.f64 (*.f64 (/.f64 a (pow.f64 c 4)) 1) (pow.f64 d 3) (+.f64 (fma.f64 -1 (/.f64 a (/.f64 (*.f64 c c) d)) (/.f64 b c)) (*.f64 (*.f64 d d) (*.f64 (/.f64 b (pow.f64 c 3)) -1))))
(fma.f64 (*.f64 1 (/.f64 a (pow.f64 c 4))) (pow.f64 d 3) (+.f64 (fma.f64 -1 (*.f64 (/.f64 a (*.f64 c c)) d) (/.f64 b c)) (*.f64 (*.f64 (*.f64 d d) (/.f64 b (pow.f64 c 3))) -1)))
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3))))
(+.f64 (+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d))) (/.f64 (*.f64 (*.f64 1/2 (*.f64 c c)) a) (pow.f64 d 3))) (/.f64 (*.f64 (*.f64 1/2 (*.f64 c c)) a) (pow.f64 d 3)))
(+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d))) (+.f64 (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (pow.f64 d 3) 1/2)) (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (pow.f64 d 3) 1/2))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (+.f64 (*.f64 -1 (/.f64 a d)) (+.f64 (/.f64 (*.f64 c b) (pow.f64 d 2)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 d 3)))))
(-.f64 (fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d))) (/.f64 (*.f64 (*.f64 1/2 (*.f64 c c)) a) (pow.f64 d 3)))) (fma.f64 1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (/.f64 (*.f64 -1/2 (*.f64 a (*.f64 c c))) (pow.f64 d 3))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b) (+.f64 (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d))) (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (pow.f64 d 3) 1/2)))) (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b) (/.f64 (*.f64 c (*.f64 a c)) (/.f64 (pow.f64 d 3) -1/2))))
(*.f64 -1 (/.f64 a d))
(/.f64 (neg.f64 a) d)
(+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2)))
(fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d)))
(+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 1/2 (*.f64 (pow.f64 c 2) a))) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 a (*.f64 c c)) -1) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 c c) (neg.f64 a)) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 1/2 (*.f64 (pow.f64 c 2) a))) (pow.f64 d 3))) (+.f64 (*.f64 -1 (/.f64 a d)) (/.f64 (*.f64 c b) (pow.f64 d 2))))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 3) b) (pow.f64 d 4))))
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 a (*.f64 c c)) -1) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d))))) (*.f64 -1/2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 d 4) b))))
(+.f64 (/.f64 -1/2 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) b))) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 d 4)) b) (fma.f64 -1 (/.f64 (*.f64 (*.f64 c c) (neg.f64 a)) (pow.f64 d 3)) (fma.f64 -1 (/.f64 a d) (/.f64 (*.f64 c b) (*.f64 d d))))))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d))))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b)
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b)
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d)))
(*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b)
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d))))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d))))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(+.f64 (/.f64 (*.f64 c b) (+.f64 (pow.f64 d 2) (pow.f64 c 2))) (*.f64 -1 (/.f64 (*.f64 a d) (+.f64 (pow.f64 d 2) (pow.f64 c 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 a d) (+.f64 (*.f64 c c) (*.f64 d d)))) (/.f64 (*.f64 c b) (+.f64 (*.f64 c c) (*.f64 d d))))
(+.f64 (/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 c c) (*.f64 d d))) (*.f64 (/.f64 c (+.f64 (*.f64 c c) (*.f64 d d))) b))
(/.f64 d a)
(+.f64 (/.f64 d a) (*.f64 1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))))
(+.f64 (/.f64 d a) (*.f64 1/2 (/.f64 (/.f64 (*.f64 c c) a) d)))
(+.f64 (/.f64 d a) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))) (*.f64 -1/8 (/.f64 (pow.f64 c 4) (*.f64 a (pow.f64 d 3))))))
(+.f64 (/.f64 d a) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 c c) a) d) (*.f64 -1/8 (/.f64 (/.f64 (pow.f64 c 4) a) (pow.f64 d 3)))))
(+.f64 (/.f64 d a) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 c 6) (*.f64 a (pow.f64 d 5)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))) (*.f64 -1/8 (/.f64 (pow.f64 c 4) (*.f64 a (pow.f64 d 3)))))))
(+.f64 (/.f64 d a) (fma.f64 1/16 (/.f64 (/.f64 (pow.f64 c 6) a) (pow.f64 d 5)) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 c c) a) d) (*.f64 -1/8 (/.f64 (/.f64 (pow.f64 c 4) a) (pow.f64 d 3))))))
(/.f64 c a)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (/.f64 c a))
(fma.f64 1/2 (/.f64 (*.f64 d d) (*.f64 a c)) (/.f64 c a))
(fma.f64 1/2 (/.f64 d (/.f64 (*.f64 a c) d)) (/.f64 c a))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (+.f64 (/.f64 c a) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) a)))))
(fma.f64 1/2 (/.f64 (*.f64 d d) (*.f64 a c)) (+.f64 (/.f64 c a) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (*.f64 a (pow.f64 c 3))))))
(+.f64 (fma.f64 1/2 (/.f64 d (/.f64 (*.f64 a c) d)) (/.f64 c a)) (/.f64 (*.f64 -1/8 (pow.f64 d 4)) (*.f64 a (pow.f64 c 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 d 6) (*.f64 (pow.f64 c 5) a))) (+.f64 (/.f64 c a) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) a))))))
(fma.f64 1/2 (/.f64 (*.f64 d d) (*.f64 a c)) (fma.f64 1/16 (/.f64 (pow.f64 d 6) (*.f64 a (pow.f64 c 5))) (+.f64 (/.f64 c a) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (*.f64 a (pow.f64 c 3)))))))
(fma.f64 1/2 (/.f64 d (/.f64 (*.f64 a c) d)) (fma.f64 1/16 (/.f64 (pow.f64 d 6) (*.f64 a (pow.f64 c 5))) (+.f64 (/.f64 c a) (/.f64 (*.f64 -1/8 (pow.f64 d 4)) (*.f64 a (pow.f64 c 3))))))
(*.f64 -1 (/.f64 c a))
(neg.f64 (/.f64 c a))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (*.f64 -1 (/.f64 c a)))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (*.f64 a c)) (neg.f64 (/.f64 c a)))
(fma.f64 -1/2 (/.f64 d (/.f64 (*.f64 a c) d)) (neg.f64 (/.f64 c a)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (+.f64 (*.f64 -1 (/.f64 c a)) (*.f64 1/8 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) a)))))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (*.f64 a c)) (fma.f64 -1 (/.f64 c a) (/.f64 (*.f64 1/8 (pow.f64 d 4)) (*.f64 a (pow.f64 c 3)))))
(fma.f64 -1/2 (/.f64 d (/.f64 (*.f64 a c) d)) (fma.f64 -1 (/.f64 c a) (/.f64 1/8 (/.f64 (*.f64 a (pow.f64 c 3)) (pow.f64 d 4)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (+.f64 (*.f64 -1 (/.f64 c a)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 d 6) (*.f64 (pow.f64 c 5) a))) (*.f64 1/8 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) a))))))
(fma.f64 -1/2 (/.f64 (*.f64 d d) (*.f64 a c)) (fma.f64 -1 (/.f64 c a) (fma.f64 -1/16 (/.f64 (pow.f64 d 6) (*.f64 a (pow.f64 c 5))) (/.f64 (*.f64 1/8 (pow.f64 d 4)) (*.f64 a (pow.f64 c 3))))))
(fma.f64 -1/2 (/.f64 d (/.f64 (*.f64 a c) d)) (fma.f64 -1 (/.f64 c a) (fma.f64 -1/16 (/.f64 (pow.f64 d 6) (*.f64 a (pow.f64 c 5))) (/.f64 1/8 (/.f64 (*.f64 a (pow.f64 c 3)) (pow.f64 d 4))))))
(/.f64 c a)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (/.f64 c a))
(fma.f64 1/2 (/.f64 (*.f64 d d) (*.f64 a c)) (/.f64 c a))
(fma.f64 1/2 (/.f64 d (/.f64 (*.f64 a c) d)) (/.f64 c a))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (+.f64 (/.f64 c a) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) a)))))
(fma.f64 1/2 (/.f64 (*.f64 d d) (*.f64 a c)) (+.f64 (/.f64 c a) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (*.f64 a (pow.f64 c 3))))))
(+.f64 (fma.f64 1/2 (/.f64 d (/.f64 (*.f64 a c) d)) (/.f64 c a)) (/.f64 (*.f64 -1/8 (pow.f64 d 4)) (*.f64 a (pow.f64 c 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 d 2) (*.f64 c a))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 d 6) (*.f64 (pow.f64 c 5) a))) (+.f64 (/.f64 c a) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (*.f64 (pow.f64 c 3) a))))))
(fma.f64 1/2 (/.f64 (*.f64 d d) (*.f64 a c)) (fma.f64 1/16 (/.f64 (pow.f64 d 6) (*.f64 a (pow.f64 c 5))) (+.f64 (/.f64 c a) (*.f64 -1/8 (/.f64 (pow.f64 d 4) (*.f64 a (pow.f64 c 3)))))))
(fma.f64 1/2 (/.f64 d (/.f64 (*.f64 a c) d)) (fma.f64 1/16 (/.f64 (pow.f64 d 6) (*.f64 a (pow.f64 c 5))) (+.f64 (/.f64 c a) (/.f64 (*.f64 -1/8 (pow.f64 d 4)) (*.f64 a (pow.f64 c 3))))))
(/.f64 d a)
(+.f64 (/.f64 d a) (*.f64 1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))))
(+.f64 (/.f64 d a) (*.f64 1/2 (/.f64 (/.f64 (*.f64 c c) a) d)))
(+.f64 (/.f64 d a) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))) (*.f64 -1/8 (/.f64 (pow.f64 c 4) (*.f64 a (pow.f64 d 3))))))
(+.f64 (/.f64 d a) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 c c) a) d) (*.f64 -1/8 (/.f64 (/.f64 (pow.f64 c 4) a) (pow.f64 d 3)))))
(+.f64 (/.f64 d a) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 c 6) (*.f64 a (pow.f64 d 5)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))) (*.f64 -1/8 (/.f64 (pow.f64 c 4) (*.f64 a (pow.f64 d 3)))))))
(+.f64 (/.f64 d a) (fma.f64 1/16 (/.f64 (/.f64 (pow.f64 c 6) a) (pow.f64 d 5)) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 c c) a) d) (*.f64 -1/8 (/.f64 (/.f64 (pow.f64 c 4) a) (pow.f64 d 3))))))
(*.f64 -1 (/.f64 d a))
(/.f64 (neg.f64 d) a)
(+.f64 (*.f64 -1 (/.f64 d a)) (*.f64 -1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))))
(fma.f64 -1 (/.f64 d a) (*.f64 -1/2 (/.f64 (/.f64 (*.f64 c c) a) d)))
(+.f64 (*.f64 -1 (/.f64 d a)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))) (*.f64 1/8 (/.f64 (pow.f64 c 4) (*.f64 a (pow.f64 d 3))))))
(fma.f64 -1 (/.f64 d a) (fma.f64 -1/2 (/.f64 (/.f64 (*.f64 c c) a) d) (*.f64 1/8 (/.f64 (/.f64 (pow.f64 c 4) a) (pow.f64 d 3)))))
(+.f64 (*.f64 -1 (/.f64 d a)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 c 6) (*.f64 a (pow.f64 d 5)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 c 2) (*.f64 a d))) (*.f64 1/8 (/.f64 (pow.f64 c 4) (*.f64 a (pow.f64 d 3)))))))
(fma.f64 -1 (/.f64 d a) (fma.f64 -1/16 (/.f64 (/.f64 (pow.f64 c 6) a) (pow.f64 d 5)) (fma.f64 -1/2 (/.f64 (/.f64 (*.f64 c c) a) d) (*.f64 1/8 (/.f64 (/.f64 (pow.f64 c 4) a) (pow.f64 d 3))))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 d d))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (pow.f64 d 2) (pow.f64 c 2))))
(*.f64 (/.f64 1 a) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 d d))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) 1)
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 a (/.f64 d (hypot.f64 c d)))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 1)
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 1 (*.f64 d (/.f64 a (hypot.f64 c d))))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 d a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 d 1) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (sqrt.f64 d) (*.f64 (sqrt.f64 d) (/.f64 a (hypot.f64 c d))))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 a (hypot.f64 c d)) (sqrt.f64 d)))
(*.f64 a (/.f64 (*.f64 (sqrt.f64 d) (sqrt.f64 d)) (hypot.f64 c d)))
(*.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (cbrt.f64 d) (/.f64 a (hypot.f64 c d))))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (cbrt.f64 d)))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 a (/.f64 (cbrt.f64 d) (hypot.f64 c d))))
(*.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2) (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 d (hypot.f64 c d)) a)
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 a (hypot.f64 c d)) d)
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (neg.f64 d) (*.f64 -1 (/.f64 a (hypot.f64 c d))))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (*.f64 (/.f64 d (hypot.f64 c d)) (sqrt.f64 a)) (sqrt.f64 a))
(*.f64 (/.f64 d (hypot.f64 c d)) (*.f64 (sqrt.f64 a) (sqrt.f64 a)))
(*.f64 (*.f64 (/.f64 d (hypot.f64 c d)) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))
(*.f64 (cbrt.f64 a) (/.f64 d (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 a) 2))))
(*.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (/.f64 d (hypot.f64 c d)) (cbrt.f64 a)))
(*.f64 (*.f64 1 (sqrt.f64 (/.f64 a (hypot.f64 c d)))) (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))))
(*.f64 (sqrt.f64 (/.f64 a (hypot.f64 c d))) (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))))
(/.f64 (sqrt.f64 (/.f64 a (hypot.f64 c d))) (/.f64 (sqrt.f64 (/.f64 (hypot.f64 c d) a)) d))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (/.f64 d (cbrt.f64 (/.f64 (hypot.f64 c d) a))))
(/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (/.f64 (hypot.f64 c d) a)))
(*.f64 (/.f64 d 1) (/.f64 a (hypot.f64 c d)))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 d (sqrt.f64 (hypot.f64 c d))) (/.f64 a (sqrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 d (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 a (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 c d))) (*.f64 d (neg.f64 a)))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 d (neg.f64 (hypot.f64 c d))) (neg.f64 a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (*.f64 -1 (/.f64 a (hypot.f64 c d))) (neg.f64 d))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 (sqrt.f64 d) (hypot.f64 c d)) (*.f64 (/.f64 (sqrt.f64 d) 1) a))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 a (hypot.f64 c d)) (sqrt.f64 d)))
(*.f64 a (/.f64 (*.f64 (sqrt.f64 d) (sqrt.f64 d)) (hypot.f64 c d)))
(*.f64 (/.f64 (sqrt.f64 d) 1) (/.f64 (sqrt.f64 d) (/.f64 (hypot.f64 c d) a)))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 a (hypot.f64 c d)) (sqrt.f64 d)))
(*.f64 a (/.f64 (*.f64 (sqrt.f64 d) (sqrt.f64 d)) (hypot.f64 c d)))
(*.f64 (/.f64 (sqrt.f64 d) (/.f64 (hypot.f64 c d) a)) (sqrt.f64 d))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 a (hypot.f64 c d)) (sqrt.f64 d)))
(*.f64 a (/.f64 (*.f64 (sqrt.f64 d) (sqrt.f64 d)) (hypot.f64 c d)))
(*.f64 (/.f64 (sqrt.f64 d) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (/.f64 (sqrt.f64 d) (cbrt.f64 (/.f64 (hypot.f64 c d) a))))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 a (hypot.f64 c d)) (sqrt.f64 d)))
(*.f64 a (/.f64 (*.f64 (sqrt.f64 d) (sqrt.f64 d)) (hypot.f64 c d)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (hypot.f64 c d)) (/.f64 (cbrt.f64 d) (/.f64 1 a)))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (cbrt.f64 d)))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 a (/.f64 (cbrt.f64 d) (hypot.f64 c d))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) 1) (/.f64 (cbrt.f64 d) (/.f64 (hypot.f64 c d) a)))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (cbrt.f64 d)))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 a (/.f64 (cbrt.f64 d) (hypot.f64 c d))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (sqrt.f64 (/.f64 (hypot.f64 c d) a))) (/.f64 (cbrt.f64 d) (sqrt.f64 (/.f64 (hypot.f64 c d) a))))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (cbrt.f64 d)))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 a (/.f64 (cbrt.f64 d) (hypot.f64 c d))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))))
(*.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 a d) (hypot.f64 c d))) (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)))
(*.f64 (/.f64 d -1) (neg.f64 (/.f64 a (hypot.f64 c d))))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 d (/.f64 (hypot.f64 c d) (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 d (hypot.f64 c d)) (*.f64 (sqrt.f64 a) (sqrt.f64 a)))
(*.f64 (/.f64 d (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (cbrt.f64 a) (/.f64 d (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 a) 2))))
(*.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (/.f64 d (hypot.f64 c d)) (cbrt.f64 a)))
(*.f64 (/.f64 d (neg.f64 (neg.f64 (hypot.f64 c d)))) (neg.f64 (neg.f64 a)))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 1 (/.f64 (hypot.f64 c d) (*.f64 (sqrt.f64 d) a))) (sqrt.f64 d))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (sqrt.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (sqrt.f64 d) (*.f64 a (sqrt.f64 d))))
(*.f64 (/.f64 1 (/.f64 (hypot.f64 c d) (*.f64 (pow.f64 (cbrt.f64 d) 2) a))) (cbrt.f64 d))
(*.f64 (cbrt.f64 d) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 a (pow.f64 (cbrt.f64 d) 2))))
(*.f64 (cbrt.f64 d) (*.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) a) (pow.f64 (cbrt.f64 d) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 (hypot.f64 c d) a)) (cbrt.f64 d))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (cbrt.f64 d)))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 a (/.f64 (cbrt.f64 d) (hypot.f64 c d))))
(*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) 1) a)
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) 1) (/.f64 a 1))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) -1) (neg.f64 a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) (/.f64 1 (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 d (hypot.f64 c d)) (*.f64 (sqrt.f64 a) (sqrt.f64 a)))
(*.f64 (/.f64 (/.f64 d (hypot.f64 c d)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (cbrt.f64 a) (/.f64 d (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 a) 2))))
(*.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (/.f64 d (hypot.f64 c d)) (cbrt.f64 a)))
(*.f64 (/.f64 (neg.f64 d) -1) (/.f64 a (hypot.f64 c d)))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 (neg.f64 d) (neg.f64 (neg.f64 (hypot.f64 c d)))) (neg.f64 a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 (*.f64 d a) 1) (/.f64 1 (hypot.f64 c d)))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 (*.f64 d a) (sqrt.f64 (hypot.f64 c d))) (pow.f64 (hypot.f64 c d) -1/2))
(*.f64 (/.f64 d (/.f64 (sqrt.f64 (hypot.f64 c d)) a)) (pow.f64 (hypot.f64 c d) -1/2))
(*.f64 (/.f64 (*.f64 d a) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (/.f64 1 (hypot.f64 c d))))
(*.f64 (/.f64 d (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) a)) (cbrt.f64 (/.f64 1 (hypot.f64 c d))))
(*.f64 (cbrt.f64 (/.f64 1 (hypot.f64 c d))) (/.f64 (*.f64 a d) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)))
(*.f64 (/.f64 (*.f64 d a) (neg.f64 (hypot.f64 c d))) -1)
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 (/.f64 d 1) 1) (/.f64 a (hypot.f64 c d)))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 (/.f64 d 1) (sqrt.f64 (hypot.f64 c d))) (/.f64 a (sqrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 d (sqrt.f64 (hypot.f64 c d))) (/.f64 a (sqrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 (/.f64 d 1) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 a (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 d (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (/.f64 a (cbrt.f64 (hypot.f64 c d))))
(*.f64 (/.f64 (/.f64 d 1) -1) (neg.f64 (/.f64 a (hypot.f64 c d))))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 (/.f64 d 1) (neg.f64 (hypot.f64 c d))) (neg.f64 a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 (hypot.f64 c d) (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 d (hypot.f64 c d)) (*.f64 (sqrt.f64 a) (sqrt.f64 a)))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (cbrt.f64 a) (/.f64 d (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 a) 2))))
(*.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (/.f64 d (hypot.f64 c d)) (cbrt.f64 a)))
(*.f64 (/.f64 (/.f64 d 1) (neg.f64 (neg.f64 (hypot.f64 c d)))) (neg.f64 (neg.f64 a)))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))) 1) (sqrt.f64 (/.f64 a (hypot.f64 c d))))
(*.f64 (sqrt.f64 (/.f64 a (hypot.f64 c d))) (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))))
(/.f64 (sqrt.f64 (/.f64 a (hypot.f64 c d))) (/.f64 (sqrt.f64 (/.f64 (hypot.f64 c d) a)) d))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 a))
(*.f64 (sqrt.f64 a) (/.f64 d (*.f64 (sqrt.f64 (hypot.f64 c d)) (sqrt.f64 (/.f64 (hypot.f64 c d) a)))))
(*.f64 (sqrt.f64 a) (/.f64 (/.f64 d (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (/.f64 (hypot.f64 c d) a))))
(*.f64 (/.f64 (/.f64 d (sqrt.f64 (/.f64 (hypot.f64 c d) a))) (sqrt.f64 (neg.f64 (hypot.f64 c d)))) (sqrt.f64 (neg.f64 a)))
(*.f64 (/.f64 d (*.f64 (sqrt.f64 (neg.f64 (hypot.f64 c d))) (sqrt.f64 (/.f64 (hypot.f64 c d) a)))) (sqrt.f64 (neg.f64 a)))
(*.f64 (/.f64 d (*.f64 (sqrt.f64 (/.f64 (hypot.f64 c d) a)) (sqrt.f64 (neg.f64 (hypot.f64 c d))))) (sqrt.f64 (neg.f64 a)))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) 1) (cbrt.f64 (/.f64 a (hypot.f64 c d))))
(*.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (/.f64 a (hypot.f64 c d))))
(/.f64 (*.f64 (cbrt.f64 (/.f64 a (hypot.f64 c d))) d) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (hypot.f64 c d))) (cbrt.f64 a))
(*.f64 (cbrt.f64 a) (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (cbrt.f64 a) (/.f64 (/.f64 d (cbrt.f64 (hypot.f64 c d))) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (neg.f64 (hypot.f64 c d)))) (cbrt.f64 (neg.f64 a)))
(*.f64 (/.f64 (/.f64 d (cbrt.f64 (neg.f64 (hypot.f64 c d)))) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2)) (cbrt.f64 (neg.f64 a)))
(pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 1)
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(pow.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2)
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 3)
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(pow.f64 (/.f64 (hypot.f64 c d) (*.f64 d a)) -1)
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(pow.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) 1/3)
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(neg.f64 (*.f64 (/.f64 d (neg.f64 (hypot.f64 c d))) a))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(sqrt.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))
(sqrt.f64 (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 2))
(log.f64 (pow.f64 (exp.f64 d) (/.f64 a (hypot.f64 c d))))
(*.f64 (/.f64 a (hypot.f64 c d)) (log.f64 (exp.f64 d)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(cbrt.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(expm1.f64 (log1p.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(exp.f64 (log.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(exp.f64 (*.f64 (log.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 1))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(log1p.f64 (expm1.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))))
(*.f64 d (/.f64 a (hypot.f64 c d)))
(/.f64 (*.f64 a d) (hypot.f64 c d))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (/.f64 a (hypot.f64 c d))) d (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 a) (hypot.f64 c d)) d (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d))) (hypot.f64 c d)))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 a) (hypot.f64 c d)) d (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d))) (hypot.f64 c d)))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) (sqrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 a) (hypot.f64 c d)) d (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d))) (hypot.f64 c d)))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (hypot.f64 c d)))) 2) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 a) (hypot.f64 c d)) d (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d))) (hypot.f64 c d)))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) (*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 (/.f64 (neg.f64 a) (hypot.f64 c d)) d (*.f64 d (/.f64 a (hypot.f64 c d))))))
(+.f64 (-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) (/.f64 (fma.f64 (neg.f64 a) (/.f64 d (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d))) (hypot.f64 c d)))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) 1)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))
(+.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))
(+.f64 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))) (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (/.f64 1 (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))
(+.f64 (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (/.f64 1 (hypot.f64 c d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))
(+.f64 (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 c (/.f64 b (hypot.f64 c d))))) (*.f64 1 (*.f64 (/.f64 1 (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))
(+.f64 (*.f64 1 (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (/.f64 1 (hypot.f64 c d)))) (*.f64 1 (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (/.f64 1 (hypot.f64 c d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))
(-.f64 (exp.f64 (log1p.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))))) 1)
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(/.f64 1 (/.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))
(/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (hypot.f64 c d))
(/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))) (hypot.f64 c d))
(/.f64 (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (/.f64 (hypot.f64 c d) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (hypot.f64 c d)) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))
(*.f64 (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d)))))) (/.f64 (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d)))))) (hypot.f64 c d)))
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) 2) (/.f64 (hypot.f64 c d) (cbrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) 2) (hypot.f64 c d)) (cbrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d)))))) 2) (/.f64 (hypot.f64 c d) (cbrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 d (*.f64 (/.f64 a (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 3) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (*.f64 d (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 2))) (*.f64 (hypot.f64 c d) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d)))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 d (*.f64 (/.f64 a (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 3) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 3))) (*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))) (sqrt.f64 (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (*.f64 d (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))))))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))
(/.f64 (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 d (*.f64 (/.f64 a (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 3) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (*.f64 d (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))))
(/.f64 (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) -1) (neg.f64 (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))
(/.f64 (*.f64 -1 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (neg.f64 (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (/.f64 1 (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (/.f64 1 (hypot.f64 c d))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 d (*.f64 (/.f64 a (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 3) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (*.f64 d (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))))
(/.f64 (/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (sqrt.f64 (hypot.f64 c d))) (sqrt.f64 (hypot.f64 c d)))
(/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (*.f64 (sqrt.f64 (hypot.f64 c d)) (sqrt.f64 (hypot.f64 c d))))
(/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))) (*.f64 (sqrt.f64 (hypot.f64 c d)) (sqrt.f64 (hypot.f64 c d))))
(/.f64 (/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)) (cbrt.f64 (hypot.f64 c d)))
(/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (*.f64 (cbrt.f64 (hypot.f64 c d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)))
(/.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))) (*.f64 (cbrt.f64 (hypot.f64 c d)) (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (*.f64 (hypot.f64 c d) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (*.f64 (neg.f64 d) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))) (*.f64 (hypot.f64 c d) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))
(/.f64 (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (*.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d)))))) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) (+.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 4) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 4)) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) (+.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2))))
(/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 4) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 4)) (*.f64 (hypot.f64 c d) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d))) (+.f64 (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 2) (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 6) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 6)) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 d (*.f64 (/.f64 a (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))) (+.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3))))
(/.f64 (/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 6) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 6)) (hypot.f64 c d)) (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (*.f64 d (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d))))))) (+.f64 (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 3) (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 3)))
(/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (-.f64 (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) (*.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (-.f64 (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)) (*.f64 c (/.f64 b (hypot.f64 c d))))))))
(/.f64 (/.f64 (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 3) (pow.f64 (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d)))) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (*.f64 (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d)))) (-.f64 (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d)))) (/.f64 c (/.f64 (hypot.f64 c d) b))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) 3)) (*.f64 (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) 3)) (*.f64 (hypot.f64 c d) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 4) (+.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 4) (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2)))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 6) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 6)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d))))) (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 4) (*.f64 (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 2) (+.f64 (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 2) (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) 3)) (*.f64 (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))) (+.f64 (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) 3)) (*.f64 (hypot.f64 c d) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 d (*.f64 (/.f64 a (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 6) (*.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) (+.f64 (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3) (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3)))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 3) 3) (pow.f64 (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 3) 3)) (hypot.f64 c d)) (*.f64 (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (*.f64 d (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))) (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 6) (*.f64 (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 3) (+.f64 (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 3) (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 3))))))
(/.f64 (-.f64 (*.f64 (*.f64 c b) (/.f64 (hypot.f64 c d) a)) (*.f64 (hypot.f64 c d) d)) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (/.f64 (hypot.f64 c d) a))))
(/.f64 (fma.f64 (*.f64 c b) (/.f64 (hypot.f64 c d) a) (*.f64 (hypot.f64 c d) (neg.f64 d))) (*.f64 (hypot.f64 c d) (/.f64 (pow.f64 (hypot.f64 c d) 2) a)))
(/.f64 (-.f64 (*.f64 c (*.f64 b (/.f64 (hypot.f64 c d) a))) (*.f64 d (hypot.f64 c d))) (/.f64 (pow.f64 (hypot.f64 c d) 3) a))
(/.f64 (-.f64 (*.f64 (*.f64 c b) (/.f64 (hypot.f64 c d) (*.f64 d a))) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (/.f64 (hypot.f64 c d) (*.f64 d a)))))
(/.f64 (-.f64 (*.f64 (*.f64 c b) (/.f64 (hypot.f64 c d) (*.f64 a d))) (hypot.f64 c d)) (*.f64 (hypot.f64 c d) (/.f64 (pow.f64 (hypot.f64 c d) 2) (*.f64 a d))))
(/.f64 (-.f64 (*.f64 c (/.f64 (*.f64 b (hypot.f64 c d)) (*.f64 a d))) (hypot.f64 c d)) (/.f64 (pow.f64 (hypot.f64 c d) 3) (*.f64 a d)))
(/.f64 (-.f64 (*.f64 (*.f64 c b) (/.f64 (neg.f64 (hypot.f64 c d)) a)) (*.f64 (hypot.f64 c d) (neg.f64 d))) (*.f64 (hypot.f64 c d) (*.f64 (hypot.f64 c d) (/.f64 (neg.f64 (hypot.f64 c d)) a))))
(/.f64 (-.f64 (*.f64 (*.f64 c b) (/.f64 (neg.f64 (hypot.f64 c d)) a)) (*.f64 (hypot.f64 c d) (neg.f64 d))) (*.f64 (pow.f64 (hypot.f64 c d) 2) (/.f64 (neg.f64 (hypot.f64 c d)) a)))
(/.f64 (+.f64 (*.f64 d (hypot.f64 c d)) (*.f64 b (*.f64 c (/.f64 (neg.f64 (hypot.f64 c d)) a)))) (*.f64 (/.f64 (neg.f64 (hypot.f64 c d)) a) (pow.f64 (hypot.f64 c d) 2)))
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (neg.f64 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (neg.f64 (hypot.f64 c d)) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 d (*.f64 (/.f64 a (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 3) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (*.f64 d (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) 1) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (hypot.f64 c d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) -1) (*.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))) (neg.f64 (hypot.f64 c d))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) 1) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (hypot.f64 c d)))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 d (*.f64 (/.f64 a (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 3) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (*.f64 d (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) -1) (*.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))) (neg.f64 (hypot.f64 c d))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 d (*.f64 (/.f64 a (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 3) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (*.f64 d (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2))) (*.f64 (hypot.f64 c d) (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d))))))
(/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 2)) (*.f64 (hypot.f64 c d) (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3))) (*.f64 (hypot.f64 c d) (neg.f64 (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))))
(/.f64 (-.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 3) (pow.f64 (*.f64 d (/.f64 a (hypot.f64 c d))) 3)) (*.f64 (hypot.f64 c d) (+.f64 (pow.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) 2) (*.f64 d (*.f64 (/.f64 a (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 d (/.f64 a (hypot.f64 c d)))))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 3) (pow.f64 (/.f64 (*.f64 a d) (hypot.f64 c d)) 3)) (hypot.f64 c d)) (+.f64 (pow.f64 (/.f64 c (/.f64 (hypot.f64 c d) b)) 2) (*.f64 (/.f64 a (hypot.f64 c d)) (*.f64 d (fma.f64 c (/.f64 b (hypot.f64 c d)) (/.f64 (*.f64 a d) (hypot.f64 c d)))))))
(/.f64 (neg.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d)))) (neg.f64 (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))))
(pow.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) 1)
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(pow.f64 (sqrt.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))) 2)
(pow.f64 (sqrt.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))) 2)
(pow.f64 (sqrt.f64 (-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))) 2)
(pow.f64 (cbrt.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))) 3)
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(pow.f64 (pow.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) 3) 1/3)
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) 2))
(sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) 2))
(sqrt.f64 (pow.f64 (-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2))) 2))
(log.f64 (exp.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))))
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(log.f64 (+.f64 1 (expm1.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))))))
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(cbrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2))) 3))
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) (pow.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) 3)))
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) (pow.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) 3) (/.f64 1 (pow.f64 (hypot.f64 c d) 3))))
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) (pow.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) 3)))
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 c d) 3)) (pow.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))) 3)))
(cbrt.f64 (/.f64 (pow.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 (/.f64 a (hypot.f64 c d)) (neg.f64 d))) 3) (pow.f64 (hypot.f64 c d) 3)))
(cbrt.f64 (/.f64 (pow.f64 (fma.f64 c (/.f64 b (hypot.f64 c d)) (*.f64 a (/.f64 d (neg.f64 (hypot.f64 c d))))) 3) (pow.f64 (hypot.f64 c d) 3)))
(expm1.f64 (log1p.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))))
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(exp.f64 (log.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))))
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(exp.f64 (*.f64 (log.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))) 1))
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(log1p.f64 (expm1.f64 (-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 d a) (pow.f64 (hypot.f64 c d) 2)))))
(-.f64 (/.f64 (*.f64 c b) (pow.f64 (hypot.f64 c d) 2)) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (*.f64 (/.f64 c (pow.f64 (hypot.f64 c d) 2)) b) (/.f64 (*.f64 a d) (pow.f64 (hypot.f64 c d) 2)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (hypot.f64 c d) a))) 1)
(/.f64 (hypot.f64 c d) a)
(*.f64 (hypot.f64 c d) (/.f64 1 a))
(/.f64 (hypot.f64 c d) a)
(*.f64 (/.f64 (hypot.f64 c d) a) 1)
(/.f64 (hypot.f64 c d) a)
(*.f64 1 (/.f64 (hypot.f64 c d) a))
(/.f64 (hypot.f64 c d) a)
(*.f64 (sqrt.f64 (hypot.f64 c d)) (*.f64 (sqrt.f64 (hypot.f64 c d)) (/.f64 1 a)))
(*.f64 (sqrt.f64 (hypot.f64 c d)) (*.f64 (/.f64 1 a) (sqrt.f64 (hypot.f64 c d))))
(*.f64 (sqrt.f64 (hypot.f64 c d)) (/.f64 (sqrt.f64 (hypot.f64 c d)) a))
(*.f64 (sqrt.f64 (/.f64 (hypot.f64 c d) a)) (sqrt.f64 (/.f64 (hypot.f64 c d) a)))
(/.f64 (hypot.f64 c d) a)
(*.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (*.f64 (cbrt.f64 (hypot.f64 c d)) (/.f64 1 a)))
(*.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (*.f64 (/.f64 1 a) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (cbrt.f64 (hypot.f64 c d)) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) a))
(*.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2))
(/.f64 (hypot.f64 c d) a)
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2) (cbrt.f64 (/.f64 (hypot.f64 c d) a)))
(/.f64 (hypot.f64 c d) a)
(*.f64 (/.f64 1 a) (hypot.f64 c d))
(/.f64 (hypot.f64 c d) a)
(*.f64 -1 (/.f64 (neg.f64 (hypot.f64 c d)) a))
(/.f64 (hypot.f64 c d) a)
(*.f64 (neg.f64 (hypot.f64 c d)) (/.f64 1 (neg.f64 a)))
(/.f64 (neg.f64 (hypot.f64 c d)) (neg.f64 a))
(*.f64 (/.f64 1 (sqrt.f64 a)) (/.f64 (hypot.f64 c d) (sqrt.f64 a)))
(*.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 a)) (/.f64 1 (sqrt.f64 a)))
(/.f64 (/.f64 (hypot.f64 c d) (sqrt.f64 a)) (sqrt.f64 a))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 a) 2)) (/.f64 (hypot.f64 c d) (cbrt.f64 a)))
(/.f64 (/.f64 (hypot.f64 c d) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))
(*.f64 (/.f64 1 (neg.f64 a)) (neg.f64 (hypot.f64 c d)))
(*.f64 (neg.f64 (hypot.f64 c d)) (/.f64 1 (neg.f64 a)))
(/.f64 (neg.f64 (hypot.f64 c d)) (neg.f64 a))
(*.f64 (/.f64 (sqrt.f64 (hypot.f64 c d)) 1) (/.f64 (sqrt.f64 (hypot.f64 c d)) a))
(*.f64 (sqrt.f64 (hypot.f64 c d)) (*.f64 (/.f64 1 a) (sqrt.f64 (hypot.f64 c d))))
(*.f64 (sqrt.f64 (hypot.f64 c d)) (/.f64 (sqrt.f64 (hypot.f64 c d)) a))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) 1) (/.f64 (cbrt.f64 (hypot.f64 c d)) a))
(*.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (*.f64 (/.f64 1 a) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (cbrt.f64 (hypot.f64 c d)) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) a))
(*.f64 (/.f64 (sqrt.f64 (hypot.f64 c d)) a) (sqrt.f64 (hypot.f64 c d)))
(*.f64 (sqrt.f64 (hypot.f64 c d)) (*.f64 (/.f64 1 a) (sqrt.f64 (hypot.f64 c d))))
(*.f64 (sqrt.f64 (hypot.f64 c d)) (/.f64 (sqrt.f64 (hypot.f64 c d)) a))
(*.f64 (/.f64 (sqrt.f64 (hypot.f64 c d)) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (hypot.f64 c d)) (cbrt.f64 a)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (hypot.f64 c d)) (sqrt.f64 a)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (/.f64 (hypot.f64 c d) a)))
(*.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (pow.f64 (cbrt.f64 a) 2)))
(*.f64 (/.f64 1 (/.f64 a (sqrt.f64 (hypot.f64 c d)))) (sqrt.f64 (hypot.f64 c d)))
(*.f64 (sqrt.f64 (hypot.f64 c d)) (*.f64 (/.f64 1 a) (sqrt.f64 (hypot.f64 c d))))
(*.f64 (sqrt.f64 (hypot.f64 c d)) (/.f64 (sqrt.f64 (hypot.f64 c d)) a))
(*.f64 (/.f64 1 (/.f64 a (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2))) (cbrt.f64 (hypot.f64 c d)))
(*.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (*.f64 (/.f64 1 a) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (cbrt.f64 (hypot.f64 c d)) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) a))
(*.f64 (/.f64 1 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 2))) (cbrt.f64 (/.f64 (hypot.f64 c d) a)))
(/.f64 (hypot.f64 c d) a)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) a) (cbrt.f64 (hypot.f64 c d)))
(*.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) (*.f64 (/.f64 1 a) (cbrt.f64 (hypot.f64 c d))))
(*.f64 (cbrt.f64 (hypot.f64 c d)) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 c d)) 2) a))
(pow.f64 (/.f64 (hypot.f64 c d) a) 1)
(/.f64 (hypot.f64 c d) a)
(pow.f64 (sqrt.f64 (/.f64 (hypot.f64 c d) a)) 2)
(/.f64 (hypot.f64 c d) a)
(pow.f64 (cbrt.f64 (/.f64 (hypot.f64 c d) a)) 3)
(/.f64 (hypot.f64 c d) a)
(pow.f64 (pow.f64 (/.f64 (hypot.f64 c d) a) 3) 1/3)
(/.f64 (hypot.f64 c d) a)
(pow.f64 (/.f64 a (hypot.f64 c d)) -1)
(/.f64 (hypot.f64 c d) a)
(neg.f64 (/.f64 (hypot.f64 c d) (neg.f64 a)))
(*.f64 (neg.f64 (hypot.f64 c d)) (/.f64 1 (neg.f64 a)))
(/.f64 (neg.f64 (hypot.f64 c d)) (neg.f64 a))
(sqrt.f64 (pow.f64 (/.f64 (hypot.f64 c d) a) 2))
(log.f64 (exp.f64 (/.f64 (hypot.f64 c d) a)))
(/.f64 (hypot.f64 c d) a)
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (hypot.f64 c d) a))))
(/.f64 (hypot.f64 c d) a)
(cbrt.f64 (pow.f64 (/.f64 (hypot.f64 c d) a) 3))
(/.f64 (hypot.f64 c d) a)
(cbrt.f64 (/.f64 (pow.f64 (hypot.f64 c d) 3) (pow.f64 a 3)))
(/.f64 (hypot.f64 c d) a)
(expm1.f64 (log1p.f64 (/.f64 (hypot.f64 c d) a)))
(/.f64 (hypot.f64 c d) a)
(exp.f64 (log.f64 (/.f64 (hypot.f64 c d) a)))
(/.f64 (hypot.f64 c d) a)
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 c d) a)) 1))
(/.f64 (hypot.f64 c d) a)
(log1p.f64 (expm1.f64 (/.f64 (hypot.f64 c d) a)))
(/.f64 (hypot.f64 c d) a)

localize4.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

localize7.0ms (0.1%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
97.3%
(*.f64 (/.f64 c d) (/.f64 b d))
Compiler

Compiled 20 to 7 computations (65% saved)

series2.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
b
@inf
(*.f64 (/.f64 c d) (/.f64 b d))
0.0ms
c
@0
(*.f64 (/.f64 c d) (/.f64 b d))
0.0ms
b
@-inf
(*.f64 (/.f64 c d) (/.f64 b d))
0.0ms
c
@inf
(*.f64 (/.f64 c d) (/.f64 b d))
0.0ms
c
@-inf
(*.f64 (/.f64 c d) (/.f64 b d))

rewrite68.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
1988×add-sqr-sqrt
1976×*-un-lft-identity
1842×add-cube-cbrt
1808×add-cbrt-cube
180×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
117319
2245119
Stop Event
node limit
Counts
1 → 46
Calls
Call 1
Inputs
(*.f64 (/.f64 c d) (/.f64 b d))
Outputs
(((-.f64 (exp.f64 (log1p.f64 (/.f64 c (/.f64 (*.f64 d d) b)))) 1) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 c (/.f64 d (/.f64 b d))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 c (/.f64 (*.f64 d d) b)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 c (*.f64 d (/.f64 d b))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 c (*.f64 (/.f64 d b) d)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 c d) (/.f64 d b)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 b (*.f64 d (/.f64 d c))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 b (*.f64 (/.f64 d c) d)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 b d) (/.f64 d c)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 c (/.f64 d b)))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d d) (*.f64 c b))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d c) (/.f64 d b))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d b) (/.f64 d c))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 c (/.f64 d b)) d) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 c b) (*.f64 d d)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c) (*.f64 (/.f64 d b) (neg.f64 d))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b) (*.f64 (/.f64 d c) (neg.f64 d))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 c d) (neg.f64 b)) (neg.f64 d)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 b d) (neg.f64 c)) (neg.f64 d)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 c (neg.f64 b)) (*.f64 d (neg.f64 d))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (/.f64 b d)) (neg.f64 d)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) (/.f64 c d)) (neg.f64 d)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) b) (*.f64 (neg.f64 d) d)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 c (/.f64 d b)) 1) d) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 c (/.f64 d b)) (sqrt.f64 d)) (sqrt.f64 d)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 c (/.f64 d b)) (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) 1) (*.f64 (neg.f64 d) (/.f64 d b))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (neg.f64 b)) (*.f64 (neg.f64 d) (neg.f64 d))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 b (neg.f64 c)) (*.f64 d (neg.f64 d))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) c) (*.f64 (neg.f64 d) d)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) 1) (*.f64 (neg.f64 d) (/.f64 d c))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b) (neg.f64 c)) (*.f64 (neg.f64 d) (neg.f64 d))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 d b))) (neg.f64 d)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c b)) (neg.f64 (*.f64 d d))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 (*.f64 d d) b)) 1) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c b)) d) 2) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 (*.f64 d d) b))) 3) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 (*.f64 d d) b)) 3) 1/3) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 (*.f64 d d) b)) 2)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 c d)) (/.f64 b d))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 (*.f64 d d) b))))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 (*.f64 d d) b)) 3)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 (*.f64 d d) b)))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 (*.f64 d d) b)))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 (*.f64 d d) b))) 1)) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 (*.f64 d d) b)))) #(struct:egraph-query ((*.f64 (/.f64 c d) (/.f64 b d))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify78.0ms (0.6%)

Algorithm
egg-herbie
Rules
1726×associate-+l+
1408×associate-/r*
1374×associate-/l*
724×associate-+l-
720×associate-+r-
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01191562
13021562
212871562
355461562
Stop Event
node limit
Counts
82 → 50
Calls
Call 1
Inputs
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(-.f64 (exp.f64 (log1p.f64 (/.f64 c (/.f64 (*.f64 d d) b)))) 1)
(/.f64 c (/.f64 d (/.f64 b d)))
(/.f64 c (/.f64 (*.f64 d d) b))
(/.f64 c (*.f64 d (/.f64 d b)))
(/.f64 c (*.f64 (/.f64 d b) d))
(/.f64 (/.f64 c d) (/.f64 d b))
(/.f64 b (*.f64 d (/.f64 d c)))
(/.f64 b (*.f64 (/.f64 d c) d))
(/.f64 (/.f64 b d) (/.f64 d c))
(/.f64 1 (/.f64 d (/.f64 c (/.f64 d b))))
(/.f64 1 (/.f64 (*.f64 d d) (*.f64 c b)))
(/.f64 1 (*.f64 (/.f64 d c) (/.f64 d b)))
(/.f64 1 (*.f64 (/.f64 d b) (/.f64 d c)))
(/.f64 (/.f64 c (/.f64 d b)) d)
(/.f64 (*.f64 c b) (*.f64 d d))
(/.f64 (neg.f64 c) (*.f64 (/.f64 d b) (neg.f64 d)))
(/.f64 (neg.f64 b) (*.f64 (/.f64 d c) (neg.f64 d)))
(/.f64 (*.f64 (/.f64 c d) (neg.f64 b)) (neg.f64 d))
(/.f64 (*.f64 (/.f64 b d) (neg.f64 c)) (neg.f64 d))
(/.f64 (*.f64 c (neg.f64 b)) (*.f64 d (neg.f64 d)))
(/.f64 (*.f64 (neg.f64 c) (/.f64 b d)) (neg.f64 d))
(/.f64 (*.f64 (neg.f64 b) (/.f64 c d)) (neg.f64 d))
(/.f64 (*.f64 (neg.f64 c) b) (*.f64 (neg.f64 d) d))
(/.f64 (/.f64 (/.f64 c (/.f64 d b)) 1) d)
(/.f64 (/.f64 (/.f64 c (/.f64 d b)) (sqrt.f64 d)) (sqrt.f64 d))
(/.f64 (/.f64 (/.f64 c (/.f64 d b)) (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d))
(/.f64 (*.f64 (neg.f64 c) 1) (*.f64 (neg.f64 d) (/.f64 d b)))
(/.f64 (*.f64 (neg.f64 c) (neg.f64 b)) (*.f64 (neg.f64 d) (neg.f64 d)))
(/.f64 (*.f64 b (neg.f64 c)) (*.f64 d (neg.f64 d)))
(/.f64 (*.f64 (neg.f64 b) c) (*.f64 (neg.f64 d) d))
(/.f64 (*.f64 (neg.f64 b) 1) (*.f64 (neg.f64 d) (/.f64 d c)))
(/.f64 (*.f64 (neg.f64 b) (neg.f64 c)) (*.f64 (neg.f64 d) (neg.f64 d)))
(/.f64 (neg.f64 (/.f64 c (/.f64 d b))) (neg.f64 d))
(/.f64 (neg.f64 (*.f64 c b)) (neg.f64 (*.f64 d d)))
(pow.f64 (/.f64 c (/.f64 (*.f64 d d) b)) 1)
(pow.f64 (/.f64 (sqrt.f64 (*.f64 c b)) d) 2)
(pow.f64 (cbrt.f64 (/.f64 c (/.f64 (*.f64 d d) b))) 3)
(pow.f64 (pow.f64 (/.f64 c (/.f64 (*.f64 d d) b)) 3) 1/3)
(sqrt.f64 (pow.f64 (/.f64 c (/.f64 (*.f64 d d) b)) 2))
(log.f64 (pow.f64 (exp.f64 (/.f64 c d)) (/.f64 b d)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 c (/.f64 (*.f64 d d) b)))))
(cbrt.f64 (pow.f64 (/.f64 c (/.f64 (*.f64 d d) b)) 3))
(expm1.f64 (log1p.f64 (/.f64 c (/.f64 (*.f64 d d) b))))
(exp.f64 (log.f64 (/.f64 c (/.f64 (*.f64 d d) b))))
(exp.f64 (*.f64 (log.f64 (/.f64 c (/.f64 (*.f64 d d) b))) 1))
(log1p.f64 (expm1.f64 (/.f64 c (/.f64 (*.f64 d d) b))))
Outputs
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (pow.f64 d 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(-.f64 (exp.f64 (log1p.f64 (/.f64 c (/.f64 (*.f64 d d) b)))) 1)
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 c (/.f64 d (/.f64 b d)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 c (/.f64 (*.f64 d d) b))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 c (*.f64 d (/.f64 d b)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 c (*.f64 (/.f64 d b) d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (/.f64 c d) (/.f64 d b))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 b (*.f64 d (/.f64 d c)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 b (*.f64 (/.f64 d c) d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (/.f64 b d) (/.f64 d c))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 1 (/.f64 d (/.f64 c (/.f64 d b))))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 1 (/.f64 (*.f64 d d) (*.f64 c b)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 1 (*.f64 (/.f64 d c) (/.f64 d b)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 1 (*.f64 (/.f64 d b) (/.f64 d c)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (/.f64 c (/.f64 d b)) d)
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c b) (*.f64 d d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (neg.f64 c) (*.f64 (/.f64 d b) (neg.f64 d)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (neg.f64 b) (*.f64 (/.f64 d c) (neg.f64 d)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 (/.f64 c d) (neg.f64 b)) (neg.f64 d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 (/.f64 b d) (neg.f64 c)) (neg.f64 d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 c (neg.f64 b)) (*.f64 d (neg.f64 d)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 (neg.f64 c) (/.f64 b d)) (neg.f64 d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 (neg.f64 b) (/.f64 c d)) (neg.f64 d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 (neg.f64 c) b) (*.f64 (neg.f64 d) d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (/.f64 (/.f64 c (/.f64 d b)) 1) d)
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (/.f64 (/.f64 c (/.f64 d b)) (sqrt.f64 d)) (sqrt.f64 d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (/.f64 (/.f64 c (/.f64 d b)) (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 (neg.f64 c) 1) (*.f64 (neg.f64 d) (/.f64 d b)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 (neg.f64 c) (neg.f64 b)) (*.f64 (neg.f64 d) (neg.f64 d)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 b (neg.f64 c)) (*.f64 d (neg.f64 d)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 (neg.f64 b) c) (*.f64 (neg.f64 d) d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 (neg.f64 b) 1) (*.f64 (neg.f64 d) (/.f64 d c)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (*.f64 (neg.f64 b) (neg.f64 c)) (*.f64 (neg.f64 d) (neg.f64 d)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (neg.f64 (/.f64 c (/.f64 d b))) (neg.f64 d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(/.f64 (neg.f64 (*.f64 c b)) (neg.f64 (*.f64 d d)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(pow.f64 (/.f64 c (/.f64 (*.f64 d d) b)) 1)
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 c b)) d) 2)
(pow.f64 (cbrt.f64 (/.f64 c (/.f64 (*.f64 d d) b))) 3)
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(pow.f64 (pow.f64 (/.f64 c (/.f64 (*.f64 d d) b)) 3) 1/3)
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(sqrt.f64 (pow.f64 (/.f64 c (/.f64 (*.f64 d d) b)) 2))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(log.f64 (pow.f64 (exp.f64 (/.f64 c d)) (/.f64 b d)))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 c (/.f64 (*.f64 d d) b)))))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(cbrt.f64 (pow.f64 (/.f64 c (/.f64 (*.f64 d d) b)) 3))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(expm1.f64 (log1p.f64 (/.f64 c (/.f64 (*.f64 d d) b))))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(exp.f64 (log.f64 (/.f64 c (/.f64 (*.f64 d d) b))))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(exp.f64 (*.f64 (log.f64 (/.f64 c (/.f64 (*.f64 d d) b))) 1))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))
(log1p.f64 (expm1.f64 (/.f64 c (/.f64 (*.f64 d d) b))))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 c (/.f64 b (*.f64 d d)))
(*.f64 c (/.f64 (/.f64 b d) d))

localize12.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
99.8%
(/.f64 (/.f64 a c) c)
91.5%
(*.f64 (/.f64 (/.f64 a c) c) d)
Compiler

Compiled 30 to 8 computations (73.3% saved)

series2.0ms (0%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
0.0ms
a
@0
(/.f64 (/.f64 a c) c)
0.0ms
a
@-inf
(/.f64 (/.f64 a c) c)
0.0ms
a
@inf
(/.f64 (/.f64 a c) c)
0.0ms
c
@0
(/.f64 (/.f64 a c) c)
0.0ms
c
@inf
(/.f64 (/.f64 a c) c)

rewrite75.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1936×add-sqr-sqrt
1924×*-un-lft-identity
1792×add-cube-cbrt
1762×add-cbrt-cube
176×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
117032
2238332
Stop Event
node limit
Counts
2 → 63
Calls
Call 1
Inputs
(*.f64 (/.f64 (/.f64 a c) c) d)
(/.f64 (/.f64 a c) c)
Outputs
(((-.f64 (exp.f64 (log1p.f64 (/.f64 (/.f64 d (/.f64 c a)) c))) 1) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 a c) (/.f64 c d)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 d (*.f64 c (/.f64 c a))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 d (/.f64 c a)))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 d (/.f64 c a)) c) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 d a) (*.f64 c c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 d (neg.f64 (/.f64 a c))) (neg.f64 c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 a d) (*.f64 c c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a c)) d) (neg.f64 c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 d (/.f64 c a)) 1) c) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 d (/.f64 c a)) (sqrt.f64 c)) (sqrt.f64 c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 d (/.f64 c a)) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 c a))) (neg.f64 c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 c a)) c) 1) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (sqrt.f64 a) c) (sqrt.f64 d)) 2) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 c a)) c)) 3) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 c a)) c) 3) 1/3) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 c a)) c) 2)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (/.f64 a (*.f64 c c))) d)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 c a)) c)))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 c a)) c) 3)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 c a)) c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 c a)) c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 c a)) c)) 1)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 c a)) c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a (*.f64 c c)))) 1) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 a (*.f64 (/.f64 1 c) (/.f64 1 c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 a (/.f64 1 (*.f64 c c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 a c) (/.f64 1 c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 a (*.f64 c c)) 1) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a (*.f64 c c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a c)) (*.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a) c) (/.f64 (sqrt.f64 a) c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a c)) 2) (*.f64 (cbrt.f64 (/.f64 a c)) (/.f64 1 c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a (*.f64 c c))) (pow.f64 (cbrt.f64 (/.f64 a (*.f64 c c))) 2)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a (*.f64 c c))) 2) (cbrt.f64 (/.f64 a (*.f64 c c)))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (/.f64 a c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a c)) (/.f64 1 (neg.f64 c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 a 1) (/.f64 (/.f64 1 c) c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 a (sqrt.f64 c)) (/.f64 (/.f64 1 c) (sqrt.f64 c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 a (pow.f64 (cbrt.f64 c) 2)) (/.f64 (/.f64 1 c) (cbrt.f64 c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c)) (/.f64 (/.f64 a c) (sqrt.f64 c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) 2)) (/.f64 (/.f64 a c) (cbrt.f64 c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a) 2) c) (/.f64 (cbrt.f64 a) c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a c)) 1) (/.f64 (sqrt.f64 (/.f64 a c)) c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a c)) (pow.f64 (cbrt.f64 c) 2)) (/.f64 (sqrt.f64 (/.f64 a c)) (cbrt.f64 c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a c)) 2) 1) (/.f64 (cbrt.f64 (/.f64 a c)) c)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a c)) 2) (sqrt.f64 c)) (/.f64 (cbrt.f64 (/.f64 a c)) (sqrt.f64 c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 a c)) 2) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 (/.f64 a (*.f64 c c)))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 c c)) 1) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a) c) 2) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 c c))) 3) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 c c)) 3) 1/3) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 c a)) -1) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a c) (neg.f64 c))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 c c)) 2)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 c c)))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 c c))))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 c c)) 3)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 c c)))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 c c)))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 c c))) 1)) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 c c)))) #(struct:egraph-query ((*.f64 (/.f64 (/.f64 a c) c) d) (/.f64 (/.f64 a c) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify88.0ms (0.7%)

Algorithm
egg-herbie
Rules
1464×associate-+r-
1242×associate-/l*
1242×times-frac
1100×associate-/r*
580×unswap-sqr
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01562007
14072007
216282007
376072007
Stop Event
node limit
Counts
123 → 70
Calls
Call 1
Inputs
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(/.f64 a (pow.f64 c 2))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (/.f64 d (/.f64 c a)) c))) 1)
(/.f64 (/.f64 a c) (/.f64 c d))
(/.f64 d (*.f64 c (/.f64 c a)))
(/.f64 1 (/.f64 c (/.f64 d (/.f64 c a))))
(/.f64 (/.f64 d (/.f64 c a)) c)
(/.f64 (*.f64 d a) (*.f64 c c))
(/.f64 (*.f64 d (neg.f64 (/.f64 a c))) (neg.f64 c))
(/.f64 (*.f64 a d) (*.f64 c c))
(/.f64 (*.f64 (neg.f64 (/.f64 a c)) d) (neg.f64 c))
(/.f64 (/.f64 (/.f64 d (/.f64 c a)) 1) c)
(/.f64 (/.f64 (/.f64 d (/.f64 c a)) (sqrt.f64 c)) (sqrt.f64 c))
(/.f64 (/.f64 (/.f64 d (/.f64 c a)) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c))
(/.f64 (neg.f64 (/.f64 d (/.f64 c a))) (neg.f64 c))
(pow.f64 (/.f64 (/.f64 d (/.f64 c a)) c) 1)
(pow.f64 (*.f64 (/.f64 (sqrt.f64 a) c) (sqrt.f64 d)) 2)
(pow.f64 (cbrt.f64 (/.f64 (/.f64 d (/.f64 c a)) c)) 3)
(pow.f64 (pow.f64 (/.f64 (/.f64 d (/.f64 c a)) c) 3) 1/3)
(sqrt.f64 (pow.f64 (/.f64 (/.f64 d (/.f64 c a)) c) 2))
(log.f64 (pow.f64 (exp.f64 (/.f64 a (*.f64 c c))) d))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (/.f64 d (/.f64 c a)) c))))
(cbrt.f64 (pow.f64 (/.f64 (/.f64 d (/.f64 c a)) c) 3))
(expm1.f64 (log1p.f64 (/.f64 (/.f64 d (/.f64 c a)) c)))
(exp.f64 (log.f64 (/.f64 (/.f64 d (/.f64 c a)) c)))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 d (/.f64 c a)) c)) 1))
(log1p.f64 (expm1.f64 (/.f64 (/.f64 d (/.f64 c a)) c)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 a (*.f64 c c)))) 1)
(*.f64 a (*.f64 (/.f64 1 c) (/.f64 1 c)))
(*.f64 a (/.f64 1 (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 1 c))
(*.f64 (/.f64 a (*.f64 c c)) 1)
(*.f64 1 (/.f64 a (*.f64 c c)))
(*.f64 (sqrt.f64 (/.f64 a c)) (*.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 c)))
(*.f64 (/.f64 (sqrt.f64 a) c) (/.f64 (sqrt.f64 a) c))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 a c)) 2) (*.f64 (cbrt.f64 (/.f64 a c)) (/.f64 1 c)))
(*.f64 (cbrt.f64 (/.f64 a (*.f64 c c))) (pow.f64 (cbrt.f64 (/.f64 a (*.f64 c c))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 a (*.f64 c c))) 2) (cbrt.f64 (/.f64 a (*.f64 c c))))
(*.f64 (/.f64 1 c) (/.f64 a c))
(*.f64 (neg.f64 (/.f64 a c)) (/.f64 1 (neg.f64 c)))
(*.f64 (/.f64 a 1) (/.f64 (/.f64 1 c) c))
(*.f64 (/.f64 a (sqrt.f64 c)) (/.f64 (/.f64 1 c) (sqrt.f64 c)))
(*.f64 (/.f64 a (pow.f64 (cbrt.f64 c) 2)) (/.f64 (/.f64 1 c) (cbrt.f64 c)))
(*.f64 (/.f64 1 (sqrt.f64 c)) (/.f64 (/.f64 a c) (sqrt.f64 c)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 c) 2)) (/.f64 (/.f64 a c) (cbrt.f64 c)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 a) 2) c) (/.f64 (cbrt.f64 a) c))
(*.f64 (/.f64 (sqrt.f64 (/.f64 a c)) 1) (/.f64 (sqrt.f64 (/.f64 a c)) c))
(*.f64 (/.f64 (sqrt.f64 (/.f64 a c)) (pow.f64 (cbrt.f64 c) 2)) (/.f64 (sqrt.f64 (/.f64 a c)) (cbrt.f64 c)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 a c)) 2) 1) (/.f64 (cbrt.f64 (/.f64 a c)) c))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 a c)) 2) (sqrt.f64 c)) (/.f64 (cbrt.f64 (/.f64 a c)) (sqrt.f64 c)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 a c)) 2) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 (/.f64 a (*.f64 c c))))
(pow.f64 (/.f64 a (*.f64 c c)) 1)
(pow.f64 (/.f64 (sqrt.f64 a) c) 2)
(pow.f64 (cbrt.f64 (/.f64 a (*.f64 c c))) 3)
(pow.f64 (pow.f64 (/.f64 a (*.f64 c c)) 3) 1/3)
(pow.f64 (*.f64 c (/.f64 c a)) -1)
(neg.f64 (/.f64 (/.f64 a c) (neg.f64 c)))
(sqrt.f64 (pow.f64 (/.f64 a (*.f64 c c)) 2))
(log.f64 (exp.f64 (/.f64 a (*.f64 c c))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 a (*.f64 c c)))))
(cbrt.f64 (pow.f64 (/.f64 a (*.f64 c c)) 3))
(expm1.f64 (log1p.f64 (/.f64 a (*.f64 c c))))
(exp.f64 (log.f64 (/.f64 a (*.f64 c c))))
(exp.f64 (*.f64 (log.f64 (/.f64 a (*.f64 c c))) 1))
(log1p.f64 (expm1.f64 (/.f64 a (*.f64 c c))))
Outputs
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(/.f64 a (pow.f64 c 2))
(/.f64 a (*.f64 c c))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (/.f64 d (/.f64 c a)) c))) 1)
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (/.f64 a c) (/.f64 c d))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 d (*.f64 c (/.f64 c a)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 1 (/.f64 c (/.f64 d (/.f64 c a))))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (/.f64 d (/.f64 c a)) c)
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 d a) (*.f64 c c))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 d (neg.f64 (/.f64 a c))) (neg.f64 c))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 a d) (*.f64 c c))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (*.f64 (neg.f64 (/.f64 a c)) d) (neg.f64 c))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (/.f64 (/.f64 d (/.f64 c a)) 1) c)
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (/.f64 (/.f64 d (/.f64 c a)) (sqrt.f64 c)) (sqrt.f64 c))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (/.f64 (/.f64 d (/.f64 c a)) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(/.f64 (neg.f64 (/.f64 d (/.f64 c a))) (neg.f64 c))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(pow.f64 (/.f64 (/.f64 d (/.f64 c a)) c) 1)
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 a) c) (sqrt.f64 d)) 2)
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(pow.f64 (cbrt.f64 (/.f64 (/.f64 d (/.f64 c a)) c)) 3)
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(pow.f64 (pow.f64 (/.f64 (/.f64 d (/.f64 c a)) c) 3) 1/3)
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(sqrt.f64 (pow.f64 (/.f64 (/.f64 d (/.f64 c a)) c) 2))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(log.f64 (pow.f64 (exp.f64 (/.f64 a (*.f64 c c))) d))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (/.f64 d (/.f64 c a)) c))))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(cbrt.f64 (pow.f64 (/.f64 (/.f64 d (/.f64 c a)) c) 3))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(expm1.f64 (log1p.f64 (/.f64 (/.f64 d (/.f64 c a)) c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(exp.f64 (log.f64 (/.f64 (/.f64 d (/.f64 c a)) c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 d (/.f64 c a)) c)) 1))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(log1p.f64 (expm1.f64 (/.f64 (/.f64 d (/.f64 c a)) c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 a (/.f64 (*.f64 c c) d))
(-.f64 (exp.f64 (log1p.f64 (/.f64 a (*.f64 c c)))) 1)
(/.f64 a (*.f64 c c))
(*.f64 a (*.f64 (/.f64 1 c) (/.f64 1 c)))
(/.f64 a (*.f64 c c))
(*.f64 a (/.f64 1 (*.f64 c c)))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 a c) (/.f64 1 c))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 a (*.f64 c c)) 1)
(/.f64 a (*.f64 c c))
(*.f64 1 (/.f64 a (*.f64 c c)))
(/.f64 a (*.f64 c c))
(*.f64 (sqrt.f64 (/.f64 a c)) (*.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 c)))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 (sqrt.f64 a) c) (/.f64 (sqrt.f64 a) c))
(/.f64 a (*.f64 c c))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 a c)) 2) (*.f64 (cbrt.f64 (/.f64 a c)) (/.f64 1 c)))
(/.f64 a (*.f64 c c))
(*.f64 (cbrt.f64 (/.f64 a (*.f64 c c))) (pow.f64 (cbrt.f64 (/.f64 a (*.f64 c c))) 2))
(/.f64 a (*.f64 c c))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 a (*.f64 c c))) 2) (cbrt.f64 (/.f64 a (*.f64 c c))))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 1 c) (/.f64 a c))
(/.f64 a (*.f64 c c))
(*.f64 (neg.f64 (/.f64 a c)) (/.f64 1 (neg.f64 c)))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 a 1) (/.f64 (/.f64 1 c) c))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 a (sqrt.f64 c)) (/.f64 (/.f64 1 c) (sqrt.f64 c)))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 a (pow.f64 (cbrt.f64 c) 2)) (/.f64 (/.f64 1 c) (cbrt.f64 c)))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 1 (sqrt.f64 c)) (/.f64 (/.f64 a c) (sqrt.f64 c)))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 c) 2)) (/.f64 (/.f64 a c) (cbrt.f64 c)))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 a) 2) c) (/.f64 (cbrt.f64 a) c))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 (sqrt.f64 (/.f64 a c)) 1) (/.f64 (sqrt.f64 (/.f64 a c)) c))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 (sqrt.f64 (/.f64 a c)) (pow.f64 (cbrt.f64 c) 2)) (/.f64 (sqrt.f64 (/.f64 a c)) (cbrt.f64 c)))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 a c)) 2) 1) (/.f64 (cbrt.f64 (/.f64 a c)) c))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 a c)) 2) (sqrt.f64 c)) (/.f64 (cbrt.f64 (/.f64 a c)) (sqrt.f64 c)))
(/.f64 a (*.f64 c c))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 a c)) 2) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 (/.f64 a (*.f64 c c))))
(*.f64 (cbrt.f64 (/.f64 a (*.f64 c c))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 a c)) 2) (pow.f64 (cbrt.f64 c) 2)))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 a c)) 2) (/.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 (/.f64 a (*.f64 c c)))))
(pow.f64 (/.f64 a (*.f64 c c)) 1)
(/.f64 a (*.f64 c c))
(pow.f64 (/.f64 (sqrt.f64 a) c) 2)
(/.f64 a (*.f64 c c))
(pow.f64 (cbrt.f64 (/.f64 a (*.f64 c c))) 3)
(/.f64 a (*.f64 c c))
(pow.f64 (pow.f64 (/.f64 a (*.f64 c c)) 3) 1/3)
(/.f64 a (*.f64 c c))
(pow.f64 (*.f64 c (/.f64 c a)) -1)
(/.f64 a (*.f64 c c))
(neg.f64 (/.f64 (/.f64 a c) (neg.f64 c)))
(/.f64 a (*.f64 c c))
(sqrt.f64 (pow.f64 (/.f64 a (*.f64 c c)) 2))
(/.f64 a (*.f64 c c))
(log.f64 (exp.f64 (/.f64 a (*.f64 c c))))
(/.f64 a (*.f64 c c))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 a (*.f64 c c)))))
(/.f64 a (*.f64 c c))
(cbrt.f64 (pow.f64 (/.f64 a (*.f64 c c)) 3))
(/.f64 a (*.f64 c c))
(expm1.f64 (log1p.f64 (/.f64 a (*.f64 c c))))
(/.f64 a (*.f64 c c))
(exp.f64 (log.f64 (/.f64 a (*.f64 c c))))
(/.f64 a (*.f64 c c))
(exp.f64 (*.f64 (log.f64 (/.f64 a (*.f64 c c))) 1))
(/.f64 a (*.f64 c c))
(log1p.f64 (expm1.f64 (/.f64 a (*.f64 c c))))
(/.f64 a (*.f64 c c))

localize13.0ms (0.1%)

Local Accuracy

Found 3 expressions with local accuracy:

NewAccuracyProgram
99.8%
(*.f64 (/.f64 c a) c)
96.6%
(-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c)))
91.7%
(/.f64 d (*.f64 (/.f64 c a) c))
Compiler

Compiled 37 to 9 computations (75.7% saved)

series3.0ms (0%)

Counts
3 → 108
Calls

27 calls:

TimeVariablePointExpression
0.0ms
c
@0
(*.f64 (/.f64 c a) c)
0.0ms
a
@0
(*.f64 (/.f64 c a) c)
0.0ms
a
@-inf
(*.f64 (/.f64 c a) c)
0.0ms
c
@inf
(*.f64 (/.f64 c a) c)
0.0ms
d
@0
(/.f64 d (*.f64 (/.f64 c a) c))

rewrite161.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1180×associate-/r/
710×associate-/l/
696×distribute-lft-neg-in
600×distribute-rgt-in
564×distribute-lft-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01163
125357
2403557
Stop Event
node limit
Counts
3 → 225
Calls
Call 1
Inputs
(/.f64 d (*.f64 (/.f64 c a) c))
(-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c)))
(*.f64 (/.f64 c a) c)
Outputs
(((-.f64 (exp.f64 (log1p.f64 (*.f64 d (/.f64 a (*.f64 c c))))) 1) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 d (/.f64 a (*.f64 c c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 d (/.f64 a (*.f64 c c))) 1) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 a (*.f64 c c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 d) c) (sqrt.f64 a)) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) (*.f64 (sqrt.f64 d) (/.f64 a (*.f64 c c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 a (*.f64 c c)))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 a (*.f64 c c)))) 2) (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) 2) (*.f64 (cbrt.f64 d) (/.f64 a (*.f64 c c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 d (/.f64 a c)) (/.f64 1 c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (*.f64 d (/.f64 a c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 a (*.f64 c c)) d) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 a c) (/.f64 d c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d) (*.f64 (/.f64 1 (*.f64 (neg.f64 c) c)) a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c) (sqrt.f64 a)) (/.f64 d (/.f64 c (sqrt.f64 a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 c a))) 2)) (/.f64 d (cbrt.f64 (*.f64 c (/.f64 c a))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d c) (/.f64 a c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d 1) (/.f64 a (*.f64 c c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c c)) (*.f64 d a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (*.f64 c c)) a) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 (neg.f64 c) c)) a) (neg.f64 d)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) c) (*.f64 (/.f64 (sqrt.f64 d) c) a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 d) c) a) (/.f64 (sqrt.f64 d) c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 1) (*.f64 (/.f64 (sqrt.f64 d) c) (/.f64 a c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 d) c) (/.f64 a c)) (sqrt.f64 d)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (/.f64 (sqrt.f64 d) (cbrt.f64 (*.f64 c (/.f64 c a))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) c) (*.f64 (/.f64 (cbrt.f64 d) c) a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) (/.f64 c a)) (/.f64 (cbrt.f64 d) c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) 1) (*.f64 (/.f64 (cbrt.f64 d) (*.f64 c c)) a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 (cbrt.f64 d) 2) c) (sqrt.f64 a)) (*.f64 (/.f64 (cbrt.f64 d) c) (sqrt.f64 a))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (*.f64 c (neg.f64 c))) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (*.f64 (neg.f64 c) c)) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (/.f64 (*.f64 c c) 1)) a) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (/.f64 (*.f64 c c) (sqrt.f64 a))) (sqrt.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 d (/.f64 (*.f64 c c) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 c a)) (sqrt.f64 d))) (sqrt.f64 d)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c (/.f64 c a)) (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) 2) (*.f64 c (/.f64 c a))) (cbrt.f64 d)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d) (*.f64 (neg.f64 c) c)) a) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d c) c) a) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d c) 1) (/.f64 a c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d c) (/.f64 c (sqrt.f64 a))) (sqrt.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d c) (sqrt.f64 c)) (/.f64 a (sqrt.f64 c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d c) (pow.f64 (cbrt.f64 c) 2)) (/.f64 a (cbrt.f64 c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d c) (neg.f64 c)) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d c) (/.f64 c 1)) a) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d c) (/.f64 c (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d c) -1) (neg.f64 (/.f64 a c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) c) (/.f64 a c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) 1) (/.f64 a (*.f64 c c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (*.f64 c c)) a) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (*.f64 c (neg.f64 c))) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (*.f64 (neg.f64 c) c)) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (/.f64 (*.f64 c c) 1)) a) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (/.f64 (*.f64 c c) (sqrt.f64 a))) (sqrt.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d 1) (/.f64 (*.f64 c c) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (/.f64 c (sqrt.f64 a))) c) (sqrt.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (*.f64 c c))) 1) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 (sqrt.f64 d) c) (sqrt.f64 a)) 2) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (*.f64 c c)))) 3) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c c) (*.f64 d a)) -1) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (*.f64 c c))) 3) 1/3) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 a (*.f64 c c)) (neg.f64 d))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (*.f64 c c))) 2)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d) (/.f64 a (*.f64 c c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (*.f64 c c))) 3)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (*.f64 c c))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (*.f64 c c))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (*.f64 c c)))) 1)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 d (/.f64 a (*.f64 c c))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))
(((+.f64 (/.f64 b c) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 1 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 1 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 1 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) 1)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) 1)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) 1)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) 1)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (/.f64 b c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (+.f64 (/.f64 b c) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (-.f64 (/.f64 b c) (exp.f64 (log1p.f64 (*.f64 d (/.f64 a (*.f64 c c)))))) 1) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) 1) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b (*.f64 d (/.f64 a c))) c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b (*.f64 d (/.f64 a c))) c)) (sqrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 b (*.f64 d (/.f64 a c))) c)) (pow.f64 (cbrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) 2)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 (-.f64 b (*.f64 d (/.f64 a c))) c)) 2) (cbrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (/.f64 1 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) (-.f64 b (*.f64 d (/.f64 a c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) (*.f64 (/.f64 1 (pow.f64 c 3)) a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 (sqrt.f64 d) c) (sqrt.f64 a)) (sqrt.f64 (/.f64 b c))) (-.f64 (sqrt.f64 (/.f64 b c)) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 d (/.f64 a (*.f64 c c))) (/.f64 b c))) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)))) (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c 3)) a) (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (*.f64 c (+.f64 (*.f64 b (/.f64 c a)) d))) (/.f64 (pow.f64 c 3) a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))) (+.f64 (pow.f64 (/.f64 b c) 2) (-.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 c (*.f64 b (/.f64 (*.f64 c c) (*.f64 d a))))) (*.f64 c (/.f64 (*.f64 c c) (*.f64 d a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 b c) (*.f64 c (*.f64 d (/.f64 a c))))) (*.f64 c c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 b (*.f64 (/.f64 c a) (neg.f64 c))) (*.f64 c (neg.f64 d)))) (*.f64 c (*.f64 (/.f64 c a) (neg.f64 c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 c (/.f64 c a)) (*.f64 (/.f64 c b) d))) (*.f64 (/.f64 c b) (*.f64 c (/.f64 c a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (/.f64 (*.f64 c c) (*.f64 d a)) (*.f64 (/.f64 c b) 1))) (*.f64 (/.f64 c b) (/.f64 (*.f64 c c) (*.f64 d a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 c (*.f64 (/.f64 c b) (*.f64 d (/.f64 a c))))) (*.f64 (/.f64 c b) c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (/.f64 c a) (neg.f64 c)) (*.f64 (/.f64 c b) (neg.f64 d)))) (*.f64 (/.f64 c b) (*.f64 (/.f64 c a) (neg.f64 c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (neg.f64 c) d) (*.f64 (neg.f64 b) (*.f64 c (/.f64 c a))))) (neg.f64 (/.f64 (pow.f64 c 3) a))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (neg.f64 c) (*.f64 (neg.f64 b) (/.f64 (*.f64 c c) (*.f64 d a))))) (*.f64 (neg.f64 c) (/.f64 (*.f64 c c) (*.f64 d a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (neg.f64 b) c) (*.f64 (neg.f64 c) (*.f64 d (/.f64 a c))))) (*.f64 (neg.f64 c) c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (neg.f64 b) (*.f64 (/.f64 c a) (neg.f64 c))) (*.f64 (neg.f64 c) (neg.f64 d)))) (*.f64 (neg.f64 c) (*.f64 (/.f64 c a) (neg.f64 c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))))) (-.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)) (-.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)) (pow.f64 (/.f64 b c) 2))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) (pow.f64 c 3)) a) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) c) (/.f64 a c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) 1) (/.f64 a (*.f64 c c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (*.f64 c c)) a) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (*.f64 c (neg.f64 c))) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (*.f64 (neg.f64 c) c)) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (/.f64 (*.f64 c c) 1)) a) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (/.f64 (*.f64 c c) (sqrt.f64 a))) (sqrt.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (/.f64 (*.f64 c c) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 d (/.f64 a (*.f64 c c))) (/.f64 b c)) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))) (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c 3) a) (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) (/.f64 (pow.f64 c 3) a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (*.f64 c (/.f64 c a))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) (*.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))) (-.f64 (/.f64 b c) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))) (*.f64 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c)) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (pow.f64 (/.f64 b c) 2)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b (*.f64 c c)) a) (/.f64 (*.f64 b (*.f64 c c)) a)) (*.f64 (*.f64 d c) (*.f64 d c))) (*.f64 (/.f64 (pow.f64 c 3) a) (*.f64 c (+.f64 (*.f64 b (/.f64 c a)) d)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b c) 3) (pow.f64 (/.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) (pow.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (-.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (/.f64 b c))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) 3)) (*.f64 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c)) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (pow.f64 (/.f64 b c) 2)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b (*.f64 c c)) a) 3) (pow.f64 (*.f64 d c) 3)) (*.f64 (/.f64 (pow.f64 c 3) a) (+.f64 (*.f64 (/.f64 (*.f64 b (*.f64 c c)) a) (/.f64 (*.f64 b (*.f64 c c)) a)) (*.f64 (*.f64 d c) (*.f64 c (+.f64 (*.f64 b (/.f64 c a)) d)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) 3)) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (/.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 b (/.f64 (*.f64 c c) (*.f64 d a))) c) (*.f64 c (/.f64 (*.f64 c c) (*.f64 d a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 b c) (*.f64 c (*.f64 d (/.f64 a c)))) (*.f64 c c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 b (*.f64 (/.f64 c a) (neg.f64 c))) (*.f64 c (neg.f64 d))) (*.f64 c (*.f64 (/.f64 c a) (neg.f64 c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 c (/.f64 c a)) (*.f64 (/.f64 c b) d)) (*.f64 (/.f64 c b) (*.f64 c (/.f64 c a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c c) (*.f64 d a)) (*.f64 (/.f64 c b) 1)) (*.f64 (/.f64 c b) (/.f64 (*.f64 c c) (*.f64 d a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 c (*.f64 (/.f64 c b) (*.f64 d (/.f64 a c)))) (*.f64 (/.f64 c b) c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 c a) (neg.f64 c)) (*.f64 (/.f64 c b) (neg.f64 d))) (*.f64 (/.f64 c b) (*.f64 (/.f64 c a) (neg.f64 c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b) (*.f64 c (/.f64 c a))) (*.f64 (neg.f64 c) d)) (neg.f64 (/.f64 (pow.f64 c 3) a))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b) (/.f64 (*.f64 c c) (*.f64 d a))) (neg.f64 c)) (*.f64 (neg.f64 c) (/.f64 (*.f64 c c) (*.f64 d a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b) c) (*.f64 (neg.f64 c) (*.f64 d (/.f64 a c)))) (*.f64 (neg.f64 c) c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-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 b) (*.f64 (/.f64 c a) (neg.f64 c))) (*.f64 (neg.f64 c) (neg.f64 d))) (*.f64 (neg.f64 c) (*.f64 (/.f64 c a) (neg.f64 c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))) (neg.f64 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))) (neg.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (-.f64 (*.f64 b (/.f64 c a)) d))) (neg.f64 (/.f64 (pow.f64 c 3) a))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d (/.f64 a c))) c) 1) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d (/.f64 a c))) c)) 2) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d (/.f64 a c))) c)) 3) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d (/.f64 a c))) c) 3) 1/3) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d (/.f64 a c))) c) 2)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d (/.f64 a c))) c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d (/.f64 a c))) c)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d (/.f64 a c))) c) 3)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d (/.f64 a c))) c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d (/.f64 a c))) c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d (/.f64 a c))) c)) 1)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (*.f64 d (/.f64 a c))) c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b (/.f64 1 c) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c)) (sqrt.f64 (/.f64 b c)) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 b c)) 2) (cbrt.f64 (/.f64 b c)) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 c (/.f64 c a)))) 1) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 c (/.f64 a c)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 c (/.f64 c a)) 1) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<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 a (*.f64 c c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 c c) a) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 c (neg.f64 c)) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule 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 c) c) (neg.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 c c) 1) a) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 c c) (sqrt.f64 a)) (sqrt.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 c c) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 c a)) 1) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (sqrt.f64 a)) 2) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 c a))) 3) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 c a)) 3) 1/3) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c a) (neg.f64 c))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 c a)) 2)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c) (/.f64 c a))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 c a))))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 c a)) 3)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c 3) (pow.f64 (/.f64 c a) 3))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c a) 3) (pow.f64 c 3))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 c a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 c a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 c a))) 1)) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-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 c (/.f64 c a)))) #(struct:egraph-query ((/.f64 d (*.f64 (/.f64 c a) c)) (-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c))) (*.f64 (/.f64 c a) c)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)))

simplify116.0ms (0.9%)

Algorithm
egg-herbie
Rules
986×associate-*r*
846×*-commutative
774×associate-/l*
770×associate-*l*
740×associate-*r/
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
058014931
1188213743
Stop Event
node limit
Counts
333 → 342
Calls
Call 1
Inputs
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(/.f64 (pow.f64 c 2) a)
(-.f64 (exp.f64 (log1p.f64 (*.f64 d (/.f64 a (*.f64 c c))))) 1)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (*.f64 d (/.f64 a (*.f64 c c))) 1)
(*.f64 1 (*.f64 d (/.f64 a (*.f64 c c))))
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)))
(*.f64 (sqrt.f64 d) (*.f64 (sqrt.f64 d) (/.f64 a (*.f64 c c))))
(*.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (cbrt.f64 d) (/.f64 a (*.f64 c c))))
(*.f64 (*.f64 d (/.f64 a c)) (/.f64 1 c))
(*.f64 (/.f64 1 c) (*.f64 d (/.f64 a c)))
(*.f64 (/.f64 a (*.f64 c c)) d)
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (neg.f64 d) (*.f64 (/.f64 1 (*.f64 (neg.f64 c) c)) a))
(*.f64 (*.f64 (/.f64 1 c) (sqrt.f64 a)) (/.f64 d (/.f64 c (sqrt.f64 a))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (/.f64 d (cbrt.f64 (*.f64 c (/.f64 c a)))))
(*.f64 (/.f64 d c) (/.f64 a c))
(*.f64 (/.f64 d 1) (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 1 (*.f64 c c)) (*.f64 d a))
(*.f64 (/.f64 d (*.f64 c c)) a)
(*.f64 (*.f64 (/.f64 1 (*.f64 (neg.f64 c) c)) a) (neg.f64 d))
(*.f64 (/.f64 (sqrt.f64 d) c) (*.f64 (/.f64 (sqrt.f64 d) c) a))
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) c) a) (/.f64 (sqrt.f64 d) c))
(*.f64 (/.f64 (sqrt.f64 d) 1) (*.f64 (/.f64 (sqrt.f64 d) c) (/.f64 a c)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (/.f64 a c)) (sqrt.f64 d))
(*.f64 (/.f64 (sqrt.f64 d) (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (/.f64 (sqrt.f64 d) (cbrt.f64 (*.f64 c (/.f64 c a)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) c) (*.f64 (/.f64 (cbrt.f64 d) c) a))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 c a)) (/.f64 (cbrt.f64 d) c))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) 1) (*.f64 (/.f64 (cbrt.f64 d) (*.f64 c c)) a))
(*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) c) (sqrt.f64 a)) (*.f64 (/.f64 (cbrt.f64 d) c) (sqrt.f64 a)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))))
(*.f64 (/.f64 d (*.f64 c (neg.f64 c))) (neg.f64 a))
(*.f64 (/.f64 d (*.f64 (neg.f64 c) c)) (neg.f64 a))
(*.f64 (/.f64 d (/.f64 (*.f64 c c) 1)) a)
(*.f64 (/.f64 d (/.f64 (*.f64 c c) (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 d (/.f64 (*.f64 c c) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (/.f64 1 (/.f64 (*.f64 c (/.f64 c a)) (sqrt.f64 d))) (sqrt.f64 d))
(*.f64 (/.f64 1 (/.f64 (*.f64 c (/.f64 c a)) (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 c (/.f64 c a))) (cbrt.f64 d))
(*.f64 (/.f64 (neg.f64 d) (*.f64 (neg.f64 c) c)) a)
(*.f64 (/.f64 (/.f64 d c) c) a)
(*.f64 (/.f64 (/.f64 d c) 1) (/.f64 a c))
(*.f64 (/.f64 (/.f64 d c) (/.f64 c (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 (/.f64 d c) (sqrt.f64 c)) (/.f64 a (sqrt.f64 c)))
(*.f64 (/.f64 (/.f64 d c) (pow.f64 (cbrt.f64 c) 2)) (/.f64 a (cbrt.f64 c)))
(*.f64 (/.f64 (/.f64 d c) (neg.f64 c)) (neg.f64 a))
(*.f64 (/.f64 (/.f64 d c) (/.f64 c 1)) a)
(*.f64 (/.f64 (/.f64 d c) (/.f64 c (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (/.f64 (/.f64 d c) -1) (neg.f64 (/.f64 a c)))
(*.f64 (/.f64 (/.f64 d 1) c) (/.f64 a c))
(*.f64 (/.f64 (/.f64 d 1) 1) (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 (/.f64 d 1) (*.f64 c c)) a)
(*.f64 (/.f64 (/.f64 d 1) (*.f64 c (neg.f64 c))) (neg.f64 a))
(*.f64 (/.f64 (/.f64 d 1) (*.f64 (neg.f64 c) c)) (neg.f64 a))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 (*.f64 c c) 1)) a)
(*.f64 (/.f64 (/.f64 d 1) (/.f64 (*.f64 c c) (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 (*.f64 c c) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (/.f64 (/.f64 d (/.f64 c (sqrt.f64 a))) c) (sqrt.f64 a))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 a))
(pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 1)
(pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2)
(pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 3)
(pow.f64 (/.f64 (*.f64 c c) (*.f64 d a)) -1)
(pow.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) 1/3)
(neg.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))
(sqrt.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))
(log.f64 (pow.f64 (exp.f64 d) (/.f64 a (*.f64 c c))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d (/.f64 a (*.f64 c c))))))
(cbrt.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))
(expm1.f64 (log1p.f64 (*.f64 d (/.f64 a (*.f64 c c)))))
(exp.f64 (log.f64 (*.f64 d (/.f64 a (*.f64 c c)))))
(exp.f64 (*.f64 (log.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 1))
(log1p.f64 (expm1.f64 (*.f64 d (/.f64 a (*.f64 c c)))))
(+.f64 (/.f64 b c) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 1 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 1 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 1 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) 1))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) 1))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) 1))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) 1))
(+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (/.f64 b c))
(+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (+.f64 (/.f64 b c) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))
(+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))
(+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))
(+.f64 (-.f64 (/.f64 b c) (exp.f64 (log1p.f64 (*.f64 d (/.f64 a (*.f64 c c)))))) 1)
(*.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) 1)
(*.f64 1 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))
(*.f64 (sqrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) (sqrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)))
(*.f64 (cbrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) (pow.f64 (cbrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) 2) (cbrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (/.f64 1 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c))))
(*.f64 (/.f64 1 c) (-.f64 b (*.f64 d (/.f64 a c))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)))))
(*.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) (*.f64 (/.f64 1 (pow.f64 c 3)) a))
(*.f64 (+.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (sqrt.f64 (/.f64 b c))) (-.f64 (sqrt.f64 (/.f64 b c)) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))))
(*.f64 (/.f64 1 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c))) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)))
(*.f64 (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)))) (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)))
(*.f64 (*.f64 (/.f64 1 (pow.f64 c 3)) a) (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (*.f64 c (+.f64 (*.f64 b (/.f64 c a)) d))) (/.f64 (pow.f64 c 3) a))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))) (+.f64 (pow.f64 (/.f64 b c) 2) (-.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 c (*.f64 b (/.f64 (*.f64 c c) (*.f64 d a))))) (*.f64 c (/.f64 (*.f64 c c) (*.f64 d a))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 b c) (*.f64 c (*.f64 d (/.f64 a c))))) (*.f64 c c))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 b (*.f64 (/.f64 c a) (neg.f64 c))) (*.f64 c (neg.f64 d)))) (*.f64 c (*.f64 (/.f64 c a) (neg.f64 c))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 c (/.f64 c a)) (*.f64 (/.f64 c b) d))) (*.f64 (/.f64 c b) (*.f64 c (/.f64 c a))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (/.f64 (*.f64 c c) (*.f64 d a)) (*.f64 (/.f64 c b) 1))) (*.f64 (/.f64 c b) (/.f64 (*.f64 c c) (*.f64 d a))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 c (*.f64 (/.f64 c b) (*.f64 d (/.f64 a c))))) (*.f64 (/.f64 c b) c))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (/.f64 c a) (neg.f64 c)) (*.f64 (/.f64 c b) (neg.f64 d)))) (*.f64 (/.f64 c b) (*.f64 (/.f64 c a) (neg.f64 c))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (neg.f64 c) d) (*.f64 (neg.f64 b) (*.f64 c (/.f64 c a))))) (neg.f64 (/.f64 (pow.f64 c 3) a)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (neg.f64 c) (*.f64 (neg.f64 b) (/.f64 (*.f64 c c) (*.f64 d a))))) (*.f64 (neg.f64 c) (/.f64 (*.f64 c c) (*.f64 d a))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (neg.f64 b) c) (*.f64 (neg.f64 c) (*.f64 d (/.f64 a c))))) (*.f64 (neg.f64 c) c))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (neg.f64 b) (*.f64 (/.f64 c a) (neg.f64 c))) (*.f64 (neg.f64 c) (neg.f64 d)))) (*.f64 (neg.f64 c) (*.f64 (/.f64 c a) (neg.f64 c))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))))) (-.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)) (-.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)) (pow.f64 (/.f64 b c) 2)))))
(*.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) (pow.f64 c 3)) a)
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) c) (/.f64 a c))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) 1) (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (*.f64 c c)) a)
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (*.f64 c (neg.f64 c))) (neg.f64 a))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (*.f64 (neg.f64 c) c)) (neg.f64 a))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (/.f64 (*.f64 c c) 1)) a)
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (/.f64 (*.f64 c c) (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (/.f64 (*.f64 c c) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(/.f64 1 (/.f64 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c)) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))) (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))))
(/.f64 1 (/.f64 (/.f64 (pow.f64 c 3) a) (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c)))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))))
(/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) (/.f64 (pow.f64 c 3) a))
(/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (*.f64 c (/.f64 c a)))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))) (-.f64 (/.f64 b c) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))) (*.f64 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c)) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (pow.f64 (/.f64 b c) 2))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 b (*.f64 c c)) a) (/.f64 (*.f64 b (*.f64 c c)) a)) (*.f64 (*.f64 d c) (*.f64 d c))) (*.f64 (/.f64 (pow.f64 c 3) a) (*.f64 c (+.f64 (*.f64 b (/.f64 c a)) d))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (/.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))))
(/.f64 (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (-.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (/.f64 b c)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) 3)) (*.f64 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c)) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (pow.f64 (/.f64 b c) 2))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 b (*.f64 c c)) a) 3) (pow.f64 (*.f64 d c) 3)) (*.f64 (/.f64 (pow.f64 c 3) a) (+.f64 (*.f64 (/.f64 (*.f64 b (*.f64 c c)) a) (/.f64 (*.f64 b (*.f64 c c)) a)) (*.f64 (*.f64 d c) (*.f64 c (+.f64 (*.f64 b (/.f64 c a)) d))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) 3)) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (/.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))))))
(/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)
(/.f64 (-.f64 (*.f64 b (/.f64 (*.f64 c c) (*.f64 d a))) c) (*.f64 c (/.f64 (*.f64 c c) (*.f64 d a))))
(/.f64 (-.f64 (*.f64 b c) (*.f64 c (*.f64 d (/.f64 a c)))) (*.f64 c c))
(/.f64 (-.f64 (*.f64 b (*.f64 (/.f64 c a) (neg.f64 c))) (*.f64 c (neg.f64 d))) (*.f64 c (*.f64 (/.f64 c a) (neg.f64 c))))
(/.f64 (-.f64 (*.f64 c (/.f64 c a)) (*.f64 (/.f64 c b) d)) (*.f64 (/.f64 c b) (*.f64 c (/.f64 c a))))
(/.f64 (-.f64 (/.f64 (*.f64 c c) (*.f64 d a)) (*.f64 (/.f64 c b) 1)) (*.f64 (/.f64 c b) (/.f64 (*.f64 c c) (*.f64 d a))))
(/.f64 (-.f64 c (*.f64 (/.f64 c b) (*.f64 d (/.f64 a c)))) (*.f64 (/.f64 c b) c))
(/.f64 (-.f64 (*.f64 (/.f64 c a) (neg.f64 c)) (*.f64 (/.f64 c b) (neg.f64 d))) (*.f64 (/.f64 c b) (*.f64 (/.f64 c a) (neg.f64 c))))
(/.f64 (-.f64 (*.f64 (neg.f64 b) (*.f64 c (/.f64 c a))) (*.f64 (neg.f64 c) d)) (neg.f64 (/.f64 (pow.f64 c 3) a)))
(/.f64 (-.f64 (*.f64 (neg.f64 b) (/.f64 (*.f64 c c) (*.f64 d a))) (neg.f64 c)) (*.f64 (neg.f64 c) (/.f64 (*.f64 c c) (*.f64 d a))))
(/.f64 (-.f64 (*.f64 (neg.f64 b) c) (*.f64 (neg.f64 c) (*.f64 d (/.f64 a c)))) (*.f64 (neg.f64 c) c))
(/.f64 (-.f64 (*.f64 (neg.f64 b) (*.f64 (/.f64 c a) (neg.f64 c))) (*.f64 (neg.f64 c) (neg.f64 d))) (*.f64 (neg.f64 c) (*.f64 (/.f64 c a) (neg.f64 c))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))) (neg.f64 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))) (neg.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)))))
(/.f64 (neg.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d))) (neg.f64 (/.f64 (pow.f64 c 3) a)))
(pow.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) 1)
(pow.f64 (sqrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) 2)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) 3)
(pow.f64 (pow.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) 3) 1/3)
(sqrt.f64 (pow.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) 2))
(log.f64 (exp.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) 3))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)))
(exp.f64 (log.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) 1))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)))
(fma.f64 b (/.f64 1 c) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))
(fma.f64 1 (/.f64 b c) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))
(fma.f64 (sqrt.f64 (/.f64 b c)) (sqrt.f64 (/.f64 b c)) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 b c)) 2) (cbrt.f64 (/.f64 b c)) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 c (/.f64 c a)))) 1)
(/.f64 c (/.f64 a c))
(/.f64 (*.f64 c (/.f64 c a)) 1)
(/.f64 1 (/.f64 a (*.f64 c c)))
(/.f64 (*.f64 c c) a)
(/.f64 (*.f64 c (neg.f64 c)) (neg.f64 a))
(/.f64 (*.f64 (neg.f64 c) c) (neg.f64 a))
(/.f64 (/.f64 (*.f64 c c) 1) a)
(/.f64 (/.f64 (*.f64 c c) (sqrt.f64 a)) (sqrt.f64 a))
(/.f64 (/.f64 (*.f64 c c) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))
(pow.f64 (*.f64 c (/.f64 c a)) 1)
(pow.f64 (/.f64 c (sqrt.f64 a)) 2)
(pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 3)
(pow.f64 (pow.f64 (*.f64 c (/.f64 c a)) 3) 1/3)
(neg.f64 (*.f64 (/.f64 c a) (neg.f64 c)))
(sqrt.f64 (pow.f64 (*.f64 c (/.f64 c a)) 2))
(log.f64 (pow.f64 (exp.f64 c) (/.f64 c a)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 c (/.f64 c a)))))
(cbrt.f64 (pow.f64 (*.f64 c (/.f64 c a)) 3))
(cbrt.f64 (*.f64 (pow.f64 c 3) (pow.f64 (/.f64 c a) 3)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 c a) 3) (pow.f64 c 3)))
(expm1.f64 (log1p.f64 (*.f64 c (/.f64 c a))))
(exp.f64 (log.f64 (*.f64 c (/.f64 c a))))
(exp.f64 (*.f64 (log.f64 (*.f64 c (/.f64 c a))) 1))
(log1p.f64 (expm1.f64 (*.f64 c (/.f64 c a))))
Outputs
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(/.f64 (*.f64 a d) (pow.f64 c 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))
(*.f64 a (/.f64 d (*.f64 c (neg.f64 c))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))
(*.f64 a (/.f64 d (*.f64 c (neg.f64 c))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))
(*.f64 a (/.f64 d (*.f64 c (neg.f64 c))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))
(*.f64 a (/.f64 d (*.f64 c (neg.f64 c))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(/.f64 b c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))
(*.f64 a (/.f64 d (*.f64 c (neg.f64 c))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2)))
(*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))
(*.f64 a (/.f64 d (*.f64 c (neg.f64 c))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 -1 (/.f64 (*.f64 a d) (pow.f64 c 2))) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(/.f64 (pow.f64 c 2) a)
(*.f64 c (/.f64 c a))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d (/.f64 a (*.f64 c c))))) 1)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (*.f64 d (/.f64 a (*.f64 c c))) 1)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 1 (*.f64 d (/.f64 a (*.f64 c c))))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2)
(*.f64 (sqrt.f64 d) (*.f64 (sqrt.f64 d) (/.f64 a (*.f64 c c))))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 a (*.f64 c c)) (sqrt.f64 d)))
(/.f64 (sqrt.f64 d) (*.f64 (/.f64 c (sqrt.f64 d)) (/.f64 c a)))
(*.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (cbrt.f64 d) (/.f64 a (*.f64 c c))))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 a (*.f64 c c)) (cbrt.f64 d)))
(*.f64 a (*.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 (cbrt.f64 d) (*.f64 c c))))
(*.f64 (*.f64 d (/.f64 a c)) (/.f64 1 c))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 1 c) (*.f64 d (/.f64 a c)))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 a (*.f64 c c)) d)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (neg.f64 d) (*.f64 (/.f64 1 (*.f64 (neg.f64 c) c)) a))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (*.f64 (/.f64 1 c) (sqrt.f64 a)) (/.f64 d (/.f64 c (sqrt.f64 a))))
(*.f64 (/.f64 1 c) (*.f64 (sqrt.f64 a) (*.f64 (/.f64 d c) (sqrt.f64 a))))
(/.f64 d (pow.f64 (/.f64 c (sqrt.f64 a)) 2))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (/.f64 d (cbrt.f64 (*.f64 c (/.f64 c a)))))
(/.f64 (/.f64 d (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (cbrt.f64 (*.f64 c (/.f64 c a))))
(*.f64 (/.f64 d c) (/.f64 a c))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 d 1) (/.f64 a (*.f64 c c)))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 1 (*.f64 c c)) (*.f64 d a))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 d (*.f64 c c)) a)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (*.f64 (/.f64 1 (*.f64 (neg.f64 c) c)) a) (neg.f64 d))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (sqrt.f64 d) c) (*.f64 (/.f64 (sqrt.f64 d) c) a))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 a (*.f64 c c)) (sqrt.f64 d)))
(/.f64 (sqrt.f64 d) (*.f64 (/.f64 c (sqrt.f64 d)) (/.f64 c a)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) c) a) (/.f64 (sqrt.f64 d) c))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 a (*.f64 c c)) (sqrt.f64 d)))
(/.f64 (sqrt.f64 d) (*.f64 (/.f64 c (sqrt.f64 d)) (/.f64 c a)))
(*.f64 (/.f64 (sqrt.f64 d) 1) (*.f64 (/.f64 (sqrt.f64 d) c) (/.f64 a c)))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 a (*.f64 c c)) (sqrt.f64 d)))
(/.f64 (sqrt.f64 d) (*.f64 (/.f64 c (sqrt.f64 d)) (/.f64 c a)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (/.f64 a c)) (sqrt.f64 d))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 a (*.f64 c c)) (sqrt.f64 d)))
(/.f64 (sqrt.f64 d) (*.f64 (/.f64 c (sqrt.f64 d)) (/.f64 c a)))
(*.f64 (/.f64 (sqrt.f64 d) (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (/.f64 (sqrt.f64 d) (cbrt.f64 (*.f64 c (/.f64 c a)))))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 a (*.f64 c c)) (sqrt.f64 d)))
(/.f64 (sqrt.f64 d) (*.f64 (/.f64 c (sqrt.f64 d)) (/.f64 c a)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) c) (*.f64 (/.f64 (cbrt.f64 d) c) a))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 a (*.f64 c c)) (cbrt.f64 d)))
(*.f64 a (*.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 (cbrt.f64 d) (*.f64 c c))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 c a)) (/.f64 (cbrt.f64 d) c))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 a (*.f64 c c)) (cbrt.f64 d)))
(*.f64 a (*.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 (cbrt.f64 d) (*.f64 c c))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) 1) (*.f64 (/.f64 (cbrt.f64 d) (*.f64 c c)) a))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 a (*.f64 c c)) (cbrt.f64 d)))
(*.f64 a (*.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 (cbrt.f64 d) (*.f64 c c))))
(*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) c) (sqrt.f64 a)) (*.f64 (/.f64 (cbrt.f64 d) c) (sqrt.f64 a)))
(*.f64 (*.f64 (sqrt.f64 a) (/.f64 (pow.f64 (cbrt.f64 d) 2) c)) (*.f64 (sqrt.f64 a) (/.f64 (cbrt.f64 d) c)))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (*.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 (cbrt.f64 d) (*.f64 c c)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))))
(*.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (pow.f64 (cbrt.f64 d) 2) (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)))
(/.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2) (cbrt.f64 (*.f64 (/.f64 a c) (/.f64 d c)))))
(*.f64 (/.f64 d (*.f64 c (neg.f64 c))) (neg.f64 a))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 d (*.f64 (neg.f64 c) c)) (neg.f64 a))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 d (/.f64 (*.f64 c c) 1)) a)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 d (/.f64 (*.f64 c c) (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 1 c) (*.f64 (sqrt.f64 a) (*.f64 (/.f64 d c) (sqrt.f64 a))))
(/.f64 d (pow.f64 (/.f64 c (sqrt.f64 a)) 2))
(*.f64 (/.f64 d (/.f64 (*.f64 c c) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (cbrt.f64 a) (*.f64 (/.f64 d (*.f64 c c)) (pow.f64 (cbrt.f64 a) 2)))
(*.f64 (/.f64 d (*.f64 c c)) (*.f64 (cbrt.f64 a) (pow.f64 (cbrt.f64 a) 2)))
(*.f64 (/.f64 1 (/.f64 (*.f64 c (/.f64 c a)) (sqrt.f64 d))) (sqrt.f64 d))
(*.f64 (sqrt.f64 d) (*.f64 (/.f64 a (*.f64 c c)) (sqrt.f64 d)))
(/.f64 (sqrt.f64 d) (*.f64 (/.f64 c (sqrt.f64 d)) (/.f64 c a)))
(*.f64 (/.f64 1 (/.f64 (*.f64 c (/.f64 c a)) (pow.f64 (cbrt.f64 d) 2))) (cbrt.f64 d))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 a (*.f64 c c)) (cbrt.f64 d)))
(*.f64 a (*.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 (cbrt.f64 d) (*.f64 c c))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 c (/.f64 c a))) (cbrt.f64 d))
(*.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (/.f64 a (*.f64 c c)) (cbrt.f64 d)))
(*.f64 a (*.f64 (pow.f64 (cbrt.f64 d) 2) (/.f64 (cbrt.f64 d) (*.f64 c c))))
(*.f64 (/.f64 (neg.f64 d) (*.f64 (neg.f64 c) c)) a)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (/.f64 d c) c) a)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (/.f64 d c) 1) (/.f64 a c))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (/.f64 d c) (/.f64 c (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 1 c) (*.f64 (sqrt.f64 a) (*.f64 (/.f64 d c) (sqrt.f64 a))))
(/.f64 d (pow.f64 (/.f64 c (sqrt.f64 a)) 2))
(*.f64 (/.f64 (/.f64 d c) (sqrt.f64 c)) (/.f64 a (sqrt.f64 c)))
(*.f64 (/.f64 d (*.f64 c (sqrt.f64 c))) (/.f64 a (sqrt.f64 c)))
(*.f64 (/.f64 (/.f64 d c) (pow.f64 (cbrt.f64 c) 2)) (/.f64 a (cbrt.f64 c)))
(*.f64 (/.f64 d (*.f64 (pow.f64 (cbrt.f64 c) 2) c)) (/.f64 a (cbrt.f64 c)))
(*.f64 (/.f64 d (*.f64 c (pow.f64 (cbrt.f64 c) 2))) (/.f64 a (cbrt.f64 c)))
(*.f64 (/.f64 (/.f64 d c) (neg.f64 c)) (neg.f64 a))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (/.f64 d c) (/.f64 c 1)) a)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (/.f64 d c) (/.f64 c (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (cbrt.f64 a) (*.f64 (/.f64 d (*.f64 c c)) (pow.f64 (cbrt.f64 a) 2)))
(*.f64 (/.f64 d (*.f64 c c)) (*.f64 (cbrt.f64 a) (pow.f64 (cbrt.f64 a) 2)))
(*.f64 (/.f64 (/.f64 d c) -1) (neg.f64 (/.f64 a c)))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (/.f64 d 1) c) (/.f64 a c))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (/.f64 d 1) 1) (/.f64 a (*.f64 c c)))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (/.f64 d 1) (*.f64 c c)) a)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (/.f64 d 1) (*.f64 c (neg.f64 c))) (neg.f64 a))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (/.f64 d 1) (*.f64 (neg.f64 c) c)) (neg.f64 a))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 (*.f64 c c) 1)) a)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 (*.f64 c c) (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (/.f64 1 c) (*.f64 (sqrt.f64 a) (*.f64 (/.f64 d c) (sqrt.f64 a))))
(/.f64 d (pow.f64 (/.f64 c (sqrt.f64 a)) 2))
(*.f64 (/.f64 (/.f64 d 1) (/.f64 (*.f64 c c) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (cbrt.f64 a) (*.f64 (/.f64 d (*.f64 c c)) (pow.f64 (cbrt.f64 a) 2)))
(*.f64 (/.f64 d (*.f64 c c)) (*.f64 (cbrt.f64 a) (pow.f64 (cbrt.f64 a) 2)))
(*.f64 (/.f64 (/.f64 d (/.f64 c (sqrt.f64 a))) c) (sqrt.f64 a))
(*.f64 (/.f64 1 c) (*.f64 (sqrt.f64 a) (*.f64 (/.f64 d c) (sqrt.f64 a))))
(/.f64 d (pow.f64 (/.f64 c (sqrt.f64 a)) 2))
(*.f64 (/.f64 (/.f64 d (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 a))
(*.f64 (cbrt.f64 a) (/.f64 d (*.f64 (pow.f64 (cbrt.f64 c) 2) (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2))))
(/.f64 (/.f64 d (pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 2)) (/.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 a)))
(pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 1)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2)
(pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 3)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(pow.f64 (/.f64 (*.f64 c c) (*.f64 d a)) -1)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(pow.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) 1/3)
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(neg.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(sqrt.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2))
(log.f64 (pow.f64 (exp.f64 d) (/.f64 a (*.f64 c c))))
(*.f64 (/.f64 a (*.f64 c c)) (log.f64 (exp.f64 d)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d (/.f64 a (*.f64 c c))))))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(cbrt.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(expm1.f64 (log1p.f64 (*.f64 d (/.f64 a (*.f64 c c)))))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(exp.f64 (log.f64 (*.f64 d (/.f64 a (*.f64 c c)))))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(exp.f64 (*.f64 (log.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 1))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(log1p.f64 (expm1.f64 (*.f64 d (/.f64 a (*.f64 c c)))))
(*.f64 d (/.f64 a (*.f64 c c)))
(*.f64 (/.f64 a c) (/.f64 d c))
(+.f64 (/.f64 b c) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (+.f64 (*.f64 (/.f64 a c) (/.f64 d c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 b c) (+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (+.f64 (*.f64 (/.f64 a c) (/.f64 d c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c) (*.f64 2 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c) (*.f64 2 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (+.f64 (+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2))) (*.f64 (/.f64 a c) (/.f64 d c)))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c) (*.f64 2 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c) (*.f64 2 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c) (*.f64 2 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (+.f64 (+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2))) (*.f64 (/.f64 a c) (/.f64 d c)))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c) (*.f64 2 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (+.f64 (+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2))) (*.f64 (/.f64 a c) (/.f64 d c)))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (+.f64 (+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2))) (*.f64 (/.f64 a c) (/.f64 d c)))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 2 (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c) (*.f64 2 (+.f64 (*.f64 (/.f64 a c) (/.f64 d c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2)))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (+.f64 (+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2))) (*.f64 (/.f64 a c) (/.f64 d c)))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c) (*.f64 2 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c) (*.f64 2 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (+.f64 (+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2))) (*.f64 (/.f64 a c) (/.f64 d c)))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 2 (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c) (*.f64 2 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 1 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 1 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 1 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (+.f64 (*.f64 (/.f64 a c) (/.f64 d c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) 1))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) 1))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) 1))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (+.f64 (*.f64 (/.f64 a c) (/.f64 d c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) 1))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (/.f64 b c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (+.f64 (/.f64 b c) (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (+.f64 (*.f64 (/.f64 a c) (/.f64 d c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (+.f64 (/.f64 b c) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (fma.f64 (neg.f64 (/.f64 a (*.f64 c c))) d (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (fma.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 1 (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (fma.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (neg.f64 (sqrt.f64 a))) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (+.f64 (*.f64 (/.f64 a c) (/.f64 d c)) (neg.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) 2))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c))))) (pow.f64 (cbrt.f64 (*.f64 d (/.f64 a (*.f64 c c)))) 2) (*.f64 d (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))
(+.f64 (/.f64 b c) (fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (fma.f64 (/.f64 (neg.f64 a) (*.f64 c c)) d (*.f64 d (/.f64 a (*.f64 c c))))))
(+.f64 (*.f64 d (+.f64 (/.f64 (/.f64 a c) (neg.f64 c)) (/.f64 a (*.f64 c c)))) (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c))
(+.f64 (-.f64 (/.f64 b c) (exp.f64 (log1p.f64 (*.f64 d (/.f64 a (*.f64 c c)))))) 1)
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) 1)
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 1 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 (sqrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) (sqrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 (cbrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) (pow.f64 (cbrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) 2))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) 2) (cbrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (/.f64 1 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (/.f64 1 (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c)))
(*.f64 (/.f64 1 c) (-.f64 b (*.f64 d (/.f64 a c))))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (+.f64 (pow.f64 (/.f64 b c) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3)))))
(*.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) (*.f64 (/.f64 1 (pow.f64 c 3)) a))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(*.f64 (+.f64 (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a)) (sqrt.f64 (/.f64 b c))) (-.f64 (sqrt.f64 (/.f64 b c)) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))))
(*.f64 (fma.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a) (sqrt.f64 (/.f64 b c))) (-.f64 (sqrt.f64 (/.f64 b c)) (*.f64 (/.f64 (sqrt.f64 d) c) (sqrt.f64 a))))
(*.f64 (/.f64 1 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c))) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (/.f64 1 (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c)))
(*.f64 (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)))) (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (+.f64 (pow.f64 (/.f64 b c) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3)))))
(*.f64 (*.f64 (/.f64 1 (pow.f64 c 3)) a) (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))) (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (*.f64 c (+.f64 (*.f64 b (/.f64 c a)) d))) (/.f64 (pow.f64 c 3) a))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (*.f64 c (fma.f64 b (/.f64 c a) d))) (/.f64 (pow.f64 c 3) a))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) c) (/.f64 (/.f64 (pow.f64 c 3) a) (fma.f64 b (/.f64 c a) d)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))) (+.f64 (pow.f64 (/.f64 b c) 2) (-.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) (pow.f64 (/.f64 b c) 3))) (+.f64 (pow.f64 (/.f64 b c) 2) (-.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3) (pow.f64 (/.f64 b c) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (-.f64 (pow.f64 (/.f64 b c) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 c (*.f64 b (/.f64 (*.f64 c c) (*.f64 d a))))) (*.f64 c (/.f64 (*.f64 c c) (*.f64 d a))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 c (/.f64 (*.f64 b (*.f64 c c)) (*.f64 a d)))) (/.f64 (pow.f64 c 3) (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (/.f64 (+.f64 c (*.f64 (*.f64 b (/.f64 c a)) (/.f64 c d))) (/.f64 (pow.f64 c 3) (*.f64 a d))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 b c) (*.f64 c (*.f64 d (/.f64 a c))))) (*.f64 c c))
(*.f64 (*.f64 c c) (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (fma.f64 b c (*.f64 c (*.f64 d (/.f64 a c))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (/.f64 (*.f64 c (+.f64 b (/.f64 a (/.f64 c d)))) (*.f64 c c)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 b (*.f64 (/.f64 c a) (neg.f64 c))) (*.f64 c (neg.f64 d)))) (*.f64 c (*.f64 (/.f64 c a) (neg.f64 c))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (fma.f64 b (*.f64 (neg.f64 c) (/.f64 c a)) (*.f64 c (neg.f64 d)))) (*.f64 c (*.f64 (neg.f64 c) (/.f64 c a))))
(*.f64 (/.f64 (neg.f64 (pow.f64 c 3)) a) (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (*.f64 (neg.f64 c) (fma.f64 b (/.f64 c a) d))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 c (/.f64 c a)) (*.f64 (/.f64 c b) d))) (*.f64 (/.f64 c b) (*.f64 c (/.f64 c a))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (fma.f64 c (/.f64 c a) (*.f64 d (/.f64 c b)))) (*.f64 (*.f64 c (/.f64 c a)) (/.f64 c b)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (fma.f64 c (/.f64 c a) (*.f64 d (/.f64 c b)))) (/.f64 (/.f64 (pow.f64 c 3) a) b))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (/.f64 (*.f64 c c) (*.f64 d a)) (*.f64 (/.f64 c b) 1))) (*.f64 (/.f64 c b) (/.f64 (*.f64 c c) (*.f64 d a))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (/.f64 c d) (/.f64 c a)) (/.f64 c b))) (/.f64 (/.f64 (pow.f64 c 3) (*.f64 a d)) b))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (/.f64 (+.f64 (*.f64 (/.f64 c a) (/.f64 c d)) (/.f64 c b)) (/.f64 (pow.f64 c 3) (*.f64 a (*.f64 d b)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 c (*.f64 (/.f64 c b) (*.f64 d (/.f64 a c))))) (*.f64 (/.f64 c b) c))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 c (*.f64 (*.f64 d (/.f64 a c)) (/.f64 c b)))) (*.f64 c (/.f64 c b)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (+.f64 c (*.f64 (/.f64 a (/.f64 c d)) (/.f64 c b)))) (*.f64 c (/.f64 c b)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (/.f64 c a) (neg.f64 c)) (*.f64 (/.f64 c b) (neg.f64 d)))) (*.f64 (/.f64 c b) (*.f64 (/.f64 c a) (neg.f64 c))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (fma.f64 (/.f64 c a) (neg.f64 c) (*.f64 (neg.f64 d) (/.f64 c b)))) (*.f64 (*.f64 (neg.f64 c) (/.f64 c a)) (/.f64 c b)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (neg.f64 (fma.f64 c (/.f64 c a) (*.f64 d (/.f64 c b))))) (/.f64 (/.f64 (neg.f64 (pow.f64 c 3)) a) b))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (neg.f64 c) d) (*.f64 (neg.f64 b) (*.f64 c (/.f64 c a))))) (neg.f64 (/.f64 (pow.f64 c 3) a)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (fma.f64 b (*.f64 (neg.f64 c) (/.f64 c a)) (*.f64 c (neg.f64 d)))) (*.f64 c (*.f64 (neg.f64 c) (/.f64 c a))))
(*.f64 (/.f64 (neg.f64 (pow.f64 c 3)) a) (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (*.f64 (neg.f64 c) (fma.f64 b (/.f64 c a) d))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (neg.f64 c) (*.f64 (neg.f64 b) (/.f64 (*.f64 c c) (*.f64 d a))))) (*.f64 (neg.f64 c) (/.f64 (*.f64 c c) (*.f64 d a))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (neg.f64 c) (*.f64 (*.f64 (/.f64 c d) (/.f64 c a)) (neg.f64 b)))) (neg.f64 (/.f64 (pow.f64 c 3) (*.f64 a d))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (-.f64 (neg.f64 c) (*.f64 (*.f64 b (/.f64 c a)) (/.f64 c d)))) (/.f64 (neg.f64 (pow.f64 c 3)) (*.f64 a d)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (neg.f64 b) c) (*.f64 (neg.f64 c) (*.f64 d (/.f64 a c))))) (*.f64 (neg.f64 c) c))
(*.f64 (*.f64 c (neg.f64 c)) (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (fma.f64 (neg.f64 b) c (*.f64 (*.f64 d (/.f64 a c)) (neg.f64 c)))))
(*.f64 c (*.f64 (neg.f64 c) (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (neg.f64 (*.f64 c (+.f64 b (/.f64 a (/.f64 c d))))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 (neg.f64 b) (*.f64 (/.f64 c a) (neg.f64 c))) (*.f64 (neg.f64 c) (neg.f64 d)))) (*.f64 (neg.f64 c) (*.f64 (/.f64 c a) (neg.f64 c))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (*.f64 c (fma.f64 b (/.f64 c a) d))) (/.f64 (pow.f64 c 3) a))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) c) (/.f64 (/.f64 (pow.f64 c 3) a) (fma.f64 b (/.f64 c a) d)))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))))) (-.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (-.f64 (pow.f64 (/.f64 b c) 4) (*.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3)))) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3))))))) (-.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3))))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3)) (-.f64 (pow.f64 (/.f64 b c) 4) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3))) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3)))))) (-.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)) (-.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)) (pow.f64 (/.f64 b c) 2)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3)))) 3))) (+.f64 (pow.f64 (/.f64 b c) 4) (*.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3)))) (-.f64 (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3)))) (pow.f64 (/.f64 b c) 2)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3)) (+.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3))) 3) (pow.f64 (/.f64 b c) 6))) (+.f64 (pow.f64 (/.f64 b c) 4) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3))) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (-.f64 (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3)) (pow.f64 (/.f64 b c) 2))))))
(*.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) (pow.f64 c 3)) a)
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) c) (/.f64 a c))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) 1) (/.f64 a (*.f64 c c)))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (*.f64 c c)) a)
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (*.f64 c (neg.f64 c))) (neg.f64 a))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (*.f64 (neg.f64 c) c)) (neg.f64 a))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (/.f64 (*.f64 c c) 1)) a)
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (/.f64 (*.f64 c c) (sqrt.f64 a))) (sqrt.f64 a))
(*.f64 (sqrt.f64 a) (*.f64 (/.f64 c (/.f64 (pow.f64 c 3) (-.f64 (*.f64 b (/.f64 c a)) d))) (sqrt.f64 a)))
(/.f64 (*.f64 c (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) c)) (pow.f64 (/.f64 c (sqrt.f64 a)) 2))
(*.f64 (/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (/.f64 (*.f64 c c) (pow.f64 (cbrt.f64 a) 2))) (cbrt.f64 a))
(*.f64 (cbrt.f64 a) (*.f64 (/.f64 c (/.f64 (pow.f64 c 3) (-.f64 (*.f64 b (/.f64 c a)) d))) (pow.f64 (cbrt.f64 a) 2)))
(*.f64 (cbrt.f64 a) (*.f64 (pow.f64 (cbrt.f64 a) 2) (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c))))
(/.f64 1 (/.f64 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c)) (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (/.f64 1 (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))) (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (+.f64 (pow.f64 (/.f64 b c) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3)))))
(/.f64 1 (/.f64 (/.f64 (pow.f64 c 3) a) (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d))))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c)))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (/.f64 1 (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c)))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (+.f64 (pow.f64 (/.f64 b c) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3)))))
(/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) (/.f64 (pow.f64 c 3) a))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(/.f64 (/.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d)) c) (*.f64 c (/.f64 c a)))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))) (-.f64 (/.f64 b c) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d))))
(*.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2)) (/.f64 1 (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c)))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))) (*.f64 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c)) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (pow.f64 (/.f64 b c) 2))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 4) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 4)) (*.f64 (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c)) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (pow.f64 (/.f64 b c) 2))))
(/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 4) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 4)) (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c))) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (pow.f64 (/.f64 b c) 2)))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 b (*.f64 c c)) a) (/.f64 (*.f64 b (*.f64 c c)) a)) (*.f64 (*.f64 d c) (*.f64 d c))) (*.f64 (/.f64 (pow.f64 c 3) a) (*.f64 c (+.f64 (*.f64 b (/.f64 c a)) d))))
(/.f64 (-.f64 (*.f64 (/.f64 b (/.f64 a (*.f64 c c))) (/.f64 b (/.f64 a (*.f64 c c)))) (*.f64 (*.f64 d c) (*.f64 d c))) (*.f64 (*.f64 c (fma.f64 b (/.f64 c a) d)) (/.f64 (pow.f64 c 3) a)))
(/.f64 (*.f64 c (fma.f64 b (/.f64 c a) d)) (/.f64 (*.f64 c (*.f64 (fma.f64 b (/.f64 c a) d) (/.f64 (pow.f64 c 3) a))) (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (/.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 6) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 6)) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3))))) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) (pow.f64 (/.f64 b c) 3))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 6) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 6)) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (+.f64 (pow.f64 (/.f64 b c) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3)))) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3) (pow.f64 (/.f64 b c) 3))))
(/.f64 (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (-.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (/.f64 b c)))))
(/.f64 (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)) (neg.f64 (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3)) (+.f64 (pow.f64 (/.f64 b c) 2) (*.f64 (*.f64 (/.f64 a c) (/.f64 d c)) (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) 3)) (*.f64 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c)) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (/.f64 b c) 2)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (pow.f64 (/.f64 b c) 2))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 2) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) 3)) (*.f64 (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c)) (+.f64 (pow.f64 (/.f64 b c) 4) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 4) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (pow.f64 (/.f64 b c) 2))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b c) 6) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 6)) (*.f64 (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c)) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 4) (+.f64 (*.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (pow.f64 (/.f64 b c) 2)) (pow.f64 (/.f64 b c) 4)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 b (*.f64 c c)) a) 3) (pow.f64 (*.f64 d c) 3)) (*.f64 (/.f64 (pow.f64 c 3) a) (+.f64 (*.f64 (/.f64 (*.f64 b (*.f64 c c)) a) (/.f64 (*.f64 b (*.f64 c c)) a)) (*.f64 (*.f64 d c) (*.f64 c (+.f64 (*.f64 b (/.f64 c a)) d))))))
(/.f64 (-.f64 (pow.f64 (/.f64 b (/.f64 a (*.f64 c c))) 3) (pow.f64 (*.f64 d c) 3)) (*.f64 (/.f64 (pow.f64 c 3) a) (fma.f64 (/.f64 b (/.f64 a (*.f64 c c))) (/.f64 b (/.f64 a (*.f64 c c))) (*.f64 d (*.f64 c (*.f64 c (fma.f64 b (/.f64 c a) d)))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 c (*.f64 b (/.f64 c a))) 3) (pow.f64 (*.f64 d c) 3)) (/.f64 (pow.f64 c 3) a)) (fma.f64 (*.f64 c (*.f64 b (/.f64 c a))) (*.f64 c (*.f64 b (/.f64 c a))) (*.f64 d (*.f64 c (*.f64 c (fma.f64 b (/.f64 c a) d))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) 3)) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a))) (+.f64 (*.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (/.f64 b c) 3)) (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) (+.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) 3)) (*.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3))))) (+.f64 (pow.f64 (/.f64 b c) 6) (+.f64 (*.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3) (pow.f64 (/.f64 b c) 3)) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 6)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 b c) 3) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (+.f64 (pow.f64 (/.f64 b c) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3)))) (+.f64 (pow.f64 (/.f64 b c) 6) (*.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3) (pow.f64 (/.f64 b c) 3))))))
(/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(/.f64 (-.f64 (*.f64 b (/.f64 (*.f64 c c) (*.f64 d a))) c) (*.f64 c (/.f64 (*.f64 c c) (*.f64 d a))))
(/.f64 (-.f64 (/.f64 (*.f64 b (*.f64 c c)) (*.f64 a d)) c) (/.f64 (pow.f64 c 3) (*.f64 a d)))
(/.f64 (-.f64 (*.f64 (*.f64 b (/.f64 c a)) (/.f64 c d)) c) (/.f64 (pow.f64 c 3) (*.f64 a d)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 c (*.f64 d (/.f64 a c)))) (*.f64 c c))
(/.f64 (-.f64 (*.f64 c b) (*.f64 c (*.f64 d (/.f64 a c)))) (*.f64 c c))
(/.f64 (*.f64 c (-.f64 b (/.f64 a (/.f64 c d)))) (*.f64 c c))
(/.f64 (-.f64 (*.f64 b (*.f64 (/.f64 c a) (neg.f64 c))) (*.f64 c (neg.f64 d))) (*.f64 c (*.f64 (/.f64 c a) (neg.f64 c))))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(/.f64 (-.f64 (*.f64 c (/.f64 c a)) (*.f64 (/.f64 c b) d)) (*.f64 (/.f64 c b) (*.f64 c (/.f64 c a))))
(/.f64 (-.f64 (*.f64 c (/.f64 c a)) (*.f64 d (/.f64 c b))) (*.f64 (*.f64 c (/.f64 c a)) (/.f64 c b)))
(/.f64 (-.f64 (*.f64 c (/.f64 c a)) (*.f64 d (/.f64 c b))) (/.f64 (/.f64 (pow.f64 c 3) a) b))
(/.f64 (-.f64 (/.f64 (*.f64 c c) (*.f64 d a)) (*.f64 (/.f64 c b) 1)) (*.f64 (/.f64 c b) (/.f64 (*.f64 c c) (*.f64 d a))))
(/.f64 (-.f64 (*.f64 (/.f64 c d) (/.f64 c a)) (/.f64 c b)) (/.f64 (/.f64 (pow.f64 c 3) (*.f64 a d)) b))
(*.f64 (/.f64 (-.f64 (*.f64 (/.f64 c a) (/.f64 c d)) (/.f64 c b)) (/.f64 (pow.f64 c 3) (*.f64 a d))) b)
(/.f64 (-.f64 c (*.f64 (/.f64 c b) (*.f64 d (/.f64 a c)))) (*.f64 (/.f64 c b) c))
(/.f64 (-.f64 c (*.f64 (*.f64 d (/.f64 a c)) (/.f64 c b))) (*.f64 c (/.f64 c b)))
(*.f64 (/.f64 (-.f64 c (*.f64 (/.f64 a (/.f64 c d)) (/.f64 c b))) (*.f64 c c)) b)
(/.f64 (-.f64 (*.f64 (/.f64 c a) (neg.f64 c)) (*.f64 (/.f64 c b) (neg.f64 d))) (*.f64 (/.f64 c b) (*.f64 (/.f64 c a) (neg.f64 c))))
(/.f64 (-.f64 (*.f64 (neg.f64 c) (/.f64 c a)) (*.f64 (neg.f64 d) (/.f64 c b))) (*.f64 (*.f64 (neg.f64 c) (/.f64 c a)) (/.f64 c b)))
(*.f64 (/.f64 (fma.f64 (/.f64 c a) (neg.f64 c) (*.f64 d (/.f64 c b))) (/.f64 (neg.f64 (pow.f64 c 3)) a)) b)
(/.f64 (-.f64 (*.f64 (neg.f64 b) (*.f64 c (/.f64 c a))) (*.f64 (neg.f64 c) d)) (neg.f64 (/.f64 (pow.f64 c 3) a)))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(/.f64 (-.f64 (*.f64 (neg.f64 b) (/.f64 (*.f64 c c) (*.f64 d a))) (neg.f64 c)) (*.f64 (neg.f64 c) (/.f64 (*.f64 c c) (*.f64 d a))))
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 c d) (/.f64 c a)) (neg.f64 b)) (neg.f64 c)) (neg.f64 (/.f64 (pow.f64 c 3) (*.f64 a d))))
(*.f64 (/.f64 (fma.f64 (neg.f64 b) (*.f64 (/.f64 c a) (/.f64 c d)) c) (neg.f64 (pow.f64 c 3))) (*.f64 a d))
(/.f64 (-.f64 (*.f64 (neg.f64 b) c) (*.f64 (neg.f64 c) (*.f64 d (/.f64 a c)))) (*.f64 (neg.f64 c) c))
(/.f64 (+.f64 (*.f64 c (neg.f64 b)) (*.f64 c (*.f64 d (/.f64 a c)))) (*.f64 c (neg.f64 c)))
(/.f64 (*.f64 c (+.f64 (neg.f64 b) (/.f64 a (/.f64 c d)))) (*.f64 c (neg.f64 c)))
(/.f64 (-.f64 (*.f64 (neg.f64 b) (*.f64 (/.f64 c a) (neg.f64 c))) (*.f64 (neg.f64 c) (neg.f64 d))) (*.f64 (neg.f64 c) (*.f64 (/.f64 c a) (neg.f64 c))))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))) (neg.f64 (+.f64 (*.f64 d (/.f64 a (*.f64 c c))) (/.f64 b c))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2))) (neg.f64 (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c))))
(*.f64 1 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 2) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2)) (fma.f64 d (/.f64 a (*.f64 c c)) (/.f64 b c))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))) (neg.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 (/.f64 (*.f64 b d) (pow.f64 c 3)) a)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 3))) (neg.f64 (+.f64 (pow.f64 (/.f64 b c) 2) (+.f64 (pow.f64 (*.f64 d (/.f64 a (*.f64 c c))) 2) (*.f64 a (/.f64 (*.f64 d b) (pow.f64 c 3)))))))
(*.f64 1 (/.f64 (-.f64 (pow.f64 (/.f64 b c) 3) (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 a c) (/.f64 d c)) 2) (+.f64 (pow.f64 (/.f64 b c) 2) (/.f64 (*.f64 a (*.f64 d b)) (pow.f64 c 3))))))
(/.f64 (neg.f64 (*.f64 c (-.f64 (*.f64 b (/.f64 c a)) d))) (neg.f64 (/.f64 (pow.f64 c 3) a)))
(*.f64 c (*.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (*.f64 a (/.f64 1 (pow.f64 c 3)))))
(*.f64 a (/.f64 (-.f64 (*.f64 b (/.f64 c a)) d) (/.f64 (pow.f64 c 3) c)))
(pow.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) 1)
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(pow.f64 (sqrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) 2)
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) 3)
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(pow.f64 (pow.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) 3) 1/3)
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(sqrt.f64 (pow.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) 2))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c) 2))
(log.f64 (exp.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c))))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(cbrt.f64 (pow.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c) 3))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(expm1.f64 (log1p.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(exp.f64 (log.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)) 1))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(log1p.f64 (expm1.f64 (/.f64 (-.f64 b (*.f64 d (/.f64 a c))) c)))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(fma.f64 b (/.f64 1 c) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(fma.f64 1 (/.f64 b c) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))
(fma.f64 (/.f64 a (*.f64 c c)) (neg.f64 d) (/.f64 b c))
(/.f64 (-.f64 b (/.f64 a (/.f64 c d))) c)
(fma.f64 (sqrt.f64 (/.f64 b c)) (sqrt.f64 (/.f64 b c)) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))
(-.f64 (*.f64 (sqrt.f64 (/.f64 b c)) (sqrt.f64 (/.f64 b c))) (*.f64 (/.f64 a c) (/.f64 d c)))
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 b c)) 2) (cbrt.f64 (/.f64 b c)) (*.f64 (/.f64 a (*.f64 c c)) (neg.f64 d)))
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 b c)) 2) (cbrt.f64 (/.f64 b c)) (*.f64 a (/.f64 d (*.f64 c (neg.f64 c)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 c (/.f64 c a)))) 1)
(*.f64 c (/.f64 c a))
(/.f64 c (/.f64 a c))
(*.f64 c (/.f64 c a))
(/.f64 (*.f64 c (/.f64 c a)) 1)
(*.f64 c (/.f64 c a))
(/.f64 1 (/.f64 a (*.f64 c c)))
(*.f64 c (/.f64 c a))
(/.f64 (*.f64 c c) a)
(*.f64 c (/.f64 c a))
(/.f64 (*.f64 c (neg.f64 c)) (neg.f64 a))
(*.f64 c (/.f64 c a))
(/.f64 (*.f64 (neg.f64 c) c) (neg.f64 a))
(*.f64 c (/.f64 c a))
(/.f64 (/.f64 (*.f64 c c) 1) a)
(*.f64 c (/.f64 c a))
(/.f64 (/.f64 (*.f64 c c) (sqrt.f64 a)) (sqrt.f64 a))
(pow.f64 (/.f64 c (sqrt.f64 a)) 2)
(/.f64 (/.f64 (*.f64 c c) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))
(/.f64 (*.f64 c c) (*.f64 (cbrt.f64 a) (pow.f64 (cbrt.f64 a) 2)))
(*.f64 (/.f64 c (cbrt.f64 a)) (/.f64 c (pow.f64 (cbrt.f64 a) 2)))
(pow.f64 (*.f64 c (/.f64 c a)) 1)
(*.f64 c (/.f64 c a))
(pow.f64 (/.f64 c (sqrt.f64 a)) 2)
(/.f64 (/.f64 (*.f64 c c) (sqrt.f64 a)) (sqrt.f64 a))
(pow.f64 (cbrt.f64 (*.f64 c (/.f64 c a))) 3)
(*.f64 c (/.f64 c a))
(pow.f64 (pow.f64 (*.f64 c (/.f64 c a)) 3) 1/3)
(*.f64 c (/.f64 c a))
(neg.f64 (*.f64 (/.f64 c a) (neg.f64 c)))
(*.f64 c (/.f64 c a))
(sqrt.f64 (pow.f64 (*.f64 c (/.f64 c a)) 2))
(log.f64 (pow.f64 (exp.f64 c) (/.f64 c a)))
(*.f64 (/.f64 c a) (log.f64 (exp.f64 c)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 c (/.f64 c a)))))
(*.f64 c (/.f64 c a))
(cbrt.f64 (pow.f64 (*.f64 c (/.f64 c a)) 3))
(*.f64 c (/.f64 c a))
(cbrt.f64 (*.f64 (pow.f64 c 3) (pow.f64 (/.f64 c a) 3)))
(*.f64 c (/.f64 c a))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 c a) 3) (pow.f64 c 3)))
(*.f64 c (/.f64 c a))
(expm1.f64 (log1p.f64 (*.f64 c (/.f64 c a))))
(*.f64 c (/.f64 c a))
(exp.f64 (log.f64 (*.f64 c (/.f64 c a))))
(*.f64 c (/.f64 c a))
(exp.f64 (*.f64 (log.f64 (*.f64 c (/.f64 c a))) 1))
(*.f64 c (/.f64 c a))
(log1p.f64 (expm1.f64 (*.f64 c (/.f64 c a))))
(*.f64 c (/.f64 c a))

eval295.0ms (2.2%)

Compiler

Compiled 28308 to 9683 computations (65.8% saved)

prune256.0ms (1.9%)

Pruning

26 alts after pruning (19 fresh and 7 done)

PrunedKeptTotal
New9626968
Fresh31316
Picked011
Done268
Total96726993
Accurracy
100.0%
Counts
993 → 26
Alt Table
Click to see full alt table
StatusAccuracyProgram
21.6%
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
19.9%
(/.f64 (/.f64 c (/.f64 d b)) d)
50.2%
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
50.7%
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
40.1%
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
26.7%
(/.f64 (neg.f64 a) (hypot.f64 c d))
42.2%
(/.f64 (neg.f64 a) d)
16.2%
(/.f64 c (/.f64 (*.f64 d d) b))
28.8%
(/.f64 c (/.f64 (*.f64 c c) b))
42.5%
(/.f64 b c)
10.6%
(/.f64 a d)
8.8%
(/.f64 a c)
49.8%
(-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c)))
17.5%
(*.f64 (/.f64 (/.f64 c d) d) b)
19.3%
(*.f64 (/.f64 c d) (/.f64 b d))
64.3%
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (/.f64 d (/.f64 (hypot.f64 c d) a))))
29.9%
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 a (/.f64 c d)) (neg.f64 b)))
10.6%
(*.f64 (/.f64 -1 d) (neg.f64 a))
8.8%
(*.f64 (/.f64 -1 c) (neg.f64 a))
21.6%
(neg.f64 (/.f64 (/.f64 d (/.f64 c a)) c))
21.2%
(neg.f64 (/.f64 (/.f64 a c) (/.f64 c d)))
21.6%
(neg.f64 (/.f64 d (*.f64 c (/.f64 c a))))
42.5%
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
8.6%
(neg.f64 (/.f64 a c))
21.6%
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
19.1%
(neg.f64 (*.f64 (*.f64 (/.f64 a 1) (/.f64 (/.f64 1 c) c)) d))
Compiler

Compiled 307 to 204 computations (33.6% saved)

regimes109.0ms (0.8%)

Counts
47 → 1
Calls
Call 1
Inputs
(/.f64 a c)
(/.f64 a d)
(/.f64 b c)
(neg.f64 (/.f64 a c))
(/.f64 (neg.f64 a) d)
(*.f64 (/.f64 -1 c) (neg.f64 a))
(*.f64 (/.f64 -1 d) (neg.f64 a))
(*.f64 (/.f64 b d) (/.f64 c d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 (/.f64 c d) d) b)
(/.f64 b (/.f64 d (/.f64 c d)))
(/.f64 c (/.f64 d (/.f64 b d)))
(/.f64 c (/.f64 (*.f64 c c) b))
(/.f64 c (/.f64 (*.f64 d d) b))
(/.f64 (/.f64 c (/.f64 d b)) d)
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(neg.f64 (/.f64 d (*.f64 c (/.f64 c a))))
(neg.f64 (/.f64 (/.f64 a c) (/.f64 c d)))
(neg.f64 (/.f64 (/.f64 d (/.f64 c a)) c))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(-.f64 (/.f64 b c) (*.f64 a (/.f64 (/.f64 d c) c)))
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
(-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
(neg.f64 (*.f64 (*.f64 (/.f64 a 1) (/.f64 (/.f64 1 c) c)) d))
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(/.f64 (neg.f64 a) (hypot.f64 c d))
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))
(/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))
(/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) (neg.f64 d)))
(fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 a (/.f64 c d)) (neg.f64 b)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
(/.f64 (+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d))))) (+.f64 (*.f64 c c) (*.f64 d d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (/.f64 d (/.f64 (hypot.f64 c d) a))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (/.f64 d (/.f64 (hypot.f64 c d) a))))
Outputs
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a)))
Calls

5 calls:

22.0ms
c
21.0ms
b
21.0ms
a
21.0ms
d
14.0ms
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Results
AccuracySegmentsBranch
98.4%1a
98.4%1b
98.4%1c
98.4%1d
98.4%1(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Compiler

Compiled 536 to 181 computations (66.2% saved)

regimes448.0ms (3.3%)

Counts
45 → 3
Calls
Call 1
Inputs
(/.f64 a c)
(/.f64 a d)
(/.f64 b c)
(neg.f64 (/.f64 a c))
(/.f64 (neg.f64 a) d)
(*.f64 (/.f64 -1 c) (neg.f64 a))
(*.f64 (/.f64 -1 d) (neg.f64 a))
(*.f64 (/.f64 b d) (/.f64 c d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 (/.f64 c d) d) b)
(/.f64 b (/.f64 d (/.f64 c d)))
(/.f64 c (/.f64 d (/.f64 b d)))
(/.f64 c (/.f64 (*.f64 c c) b))
(/.f64 c (/.f64 (*.f64 d d) b))
(/.f64 (/.f64 c (/.f64 d b)) d)
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(neg.f64 (/.f64 d (*.f64 c (/.f64 c a))))
(neg.f64 (/.f64 (/.f64 a c) (/.f64 c d)))
(neg.f64 (/.f64 (/.f64 d (/.f64 c a)) c))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(-.f64 (/.f64 b c) (*.f64 a (/.f64 (/.f64 d c) c)))
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
(-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
(neg.f64 (*.f64 (*.f64 (/.f64 a 1) (/.f64 (/.f64 1 c) c)) d))
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(/.f64 (neg.f64 a) (hypot.f64 c d))
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))
(/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))
(/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) (neg.f64 d)))
(fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 a (/.f64 c d)) (neg.f64 b)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
(/.f64 (+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d))))) (+.f64 (*.f64 c c) (*.f64 d d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (/.f64 d (/.f64 (hypot.f64 c d) a))))
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
(-.f64 (/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b)) (/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) d)))
Outputs
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a)))
Calls

5 calls:

129.0ms
c
123.0ms
b
84.0ms
a
71.0ms
d
33.0ms
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Results
AccuracySegmentsBranch
87.7%3a
81.0%4b
90.1%4c
88.1%4d
91.4%3(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Compiler

Compiled 494 to 171 computations (65.4% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.157263712282613e+274
8.071657324130717e+294
0.0ms
-3.34966035177748e+240
-6.940177470394642e+236
Compiler

Compiled 26 to 17 computations (34.6% saved)

regimes425.0ms (3.1%)

Counts
43 → 4
Calls
Call 1
Inputs
(/.f64 a c)
(/.f64 a d)
(/.f64 b c)
(neg.f64 (/.f64 a c))
(/.f64 (neg.f64 a) d)
(*.f64 (/.f64 -1 c) (neg.f64 a))
(*.f64 (/.f64 -1 d) (neg.f64 a))
(*.f64 (/.f64 b d) (/.f64 c d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 (/.f64 c d) d) b)
(/.f64 b (/.f64 d (/.f64 c d)))
(/.f64 c (/.f64 d (/.f64 b d)))
(/.f64 c (/.f64 (*.f64 c c) b))
(/.f64 c (/.f64 (*.f64 d d) b))
(/.f64 (/.f64 c (/.f64 d b)) d)
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(neg.f64 (/.f64 d (*.f64 c (/.f64 c a))))
(neg.f64 (/.f64 (/.f64 a c) (/.f64 c d)))
(neg.f64 (/.f64 (/.f64 d (/.f64 c a)) c))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(-.f64 (/.f64 b c) (*.f64 a (/.f64 (/.f64 d c) c)))
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
(-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
(neg.f64 (*.f64 (*.f64 (/.f64 a 1) (/.f64 (/.f64 1 c) c)) d))
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(/.f64 (neg.f64 a) (hypot.f64 c d))
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))
(/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))
(/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) (neg.f64 d)))
(fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 a (/.f64 c d)) (neg.f64 b)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
(/.f64 (+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d))))) (+.f64 (*.f64 c c) (*.f64 d d)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (/.f64 d (/.f64 (hypot.f64 c d) a))))
Outputs
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 a (/.f64 c d)) (neg.f64 b)))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a)))
Calls

5 calls:

112.0ms
d
96.0ms
b
86.0ms
c
68.0ms
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
53.0ms
a
Results
AccuracySegmentsBranch
76.9%3a
72.5%3b
89.7%4c
87.5%4d
79.5%3(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Compiler

Compiled 456 to 164 computations (64% saved)

bsearch94.0ms (0.7%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
19.0ms
1.1111576269884917e-83
2.9509639418374632e-80
17.0ms
-1.1920025957741703e-152
-1.8632319018864233e-155
58.0ms
-1.5895803586025393e+117
-9.049211997516182e+105
Results
87.0ms416×body256valid
1.0ms10×body256infinite
Compiler

Compiled 1122 to 639 computations (43% saved)

regimes323.0ms (2.4%)

Counts
41 → 4
Calls
Call 1
Inputs
(/.f64 a c)
(/.f64 a d)
(/.f64 b c)
(neg.f64 (/.f64 a c))
(/.f64 (neg.f64 a) d)
(*.f64 (/.f64 -1 c) (neg.f64 a))
(*.f64 (/.f64 -1 d) (neg.f64 a))
(*.f64 (/.f64 b d) (/.f64 c d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 (/.f64 c d) d) b)
(/.f64 b (/.f64 d (/.f64 c d)))
(/.f64 c (/.f64 d (/.f64 b d)))
(/.f64 c (/.f64 (*.f64 c c) b))
(/.f64 c (/.f64 (*.f64 d d) b))
(/.f64 (/.f64 c (/.f64 d b)) d)
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(neg.f64 (/.f64 d (*.f64 c (/.f64 c a))))
(neg.f64 (/.f64 (/.f64 a c) (/.f64 c d)))
(neg.f64 (/.f64 (/.f64 d (/.f64 c a)) c))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(-.f64 (/.f64 b c) (*.f64 a (/.f64 (/.f64 d c) c)))
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
(-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
(neg.f64 (*.f64 (*.f64 (/.f64 a 1) (/.f64 (/.f64 1 c) c)) d))
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(/.f64 (neg.f64 a) (hypot.f64 c d))
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))
(/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))
(/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) (neg.f64 d)))
(fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 a (/.f64 c d)) (neg.f64 b)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (*.f64 -1 (/.f64 (*.f64 a d) c)) b))
(/.f64 (+.f64 (-.f64 (*.f64 c b) (*.f64 a d)) (*.f64 2 (*.f64 2 (fma.f64 (neg.f64 d) a (*.f64 a d))))) (+.f64 (*.f64 c c) (*.f64 d d)))
Outputs
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c))
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
Calls

5 calls:

82.0ms
d
69.0ms
c
67.0ms
a
57.0ms
b
40.0ms
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Results
AccuracySegmentsBranch
67.9%4a
65.3%3b
84.9%4c
87.5%4d
76.1%4(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Compiler

Compiled 426 to 152 computations (64.3% saved)

bsearch38.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
predicate-same
Steps
TimeLeftRight
19.0ms
333.3210933680268
1756884779.7485166
15.0ms
-1.4242276834950122e-101
-1.250934361943911e-103
4.0ms
-5.6887775686685e+156
-7.153752924273891e+144
Results
34.0ms288×body256valid
0.0msbody256infinite
Compiler

Compiled 717 to 420 computations (41.4% saved)

regimes280.0ms (2.1%)

Counts
37 → 4
Calls
Call 1
Inputs
(/.f64 a c)
(/.f64 a d)
(/.f64 b c)
(neg.f64 (/.f64 a c))
(/.f64 (neg.f64 a) d)
(*.f64 (/.f64 -1 c) (neg.f64 a))
(*.f64 (/.f64 -1 d) (neg.f64 a))
(*.f64 (/.f64 b d) (/.f64 c d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 (/.f64 c d) d) b)
(/.f64 b (/.f64 d (/.f64 c d)))
(/.f64 c (/.f64 d (/.f64 b d)))
(/.f64 c (/.f64 (*.f64 c c) b))
(/.f64 c (/.f64 (*.f64 d d) b))
(/.f64 (/.f64 c (/.f64 d b)) d)
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(neg.f64 (/.f64 d (*.f64 c (/.f64 c a))))
(neg.f64 (/.f64 (/.f64 a c) (/.f64 c d)))
(neg.f64 (/.f64 (/.f64 d (/.f64 c a)) c))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(-.f64 (/.f64 b c) (*.f64 a (/.f64 (/.f64 d c) c)))
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
(-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
(neg.f64 (*.f64 (*.f64 (/.f64 a 1) (/.f64 (/.f64 1 c) c)) d))
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(/.f64 (neg.f64 a) (hypot.f64 c d))
(*.f64 (/.f64 1 (hypot.f64 c d)) (neg.f64 a))
(/.f64 c (/.f64 (fma.f64 d d (*.f64 c c)) b))
(/.f64 a (/.f64 (fma.f64 d d (*.f64 c c)) (neg.f64 d)))
Outputs
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b)))
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
Calls

5 calls:

66.0ms
d
63.0ms
a
61.0ms
c
46.0ms
b
37.0ms
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Results
AccuracySegmentsBranch
67.9%4a
65.3%3b
84.6%4c
87.5%4d
76.1%4(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Compiler

Compiled 358 to 128 computations (64.2% saved)

bsearch54.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
18.0ms
333.3210933680268
1756884779.7485166
15.0ms
-1.4242276834950122e-101
-1.250934361943911e-103
20.0ms
-5.6887775686685e+156
-7.153752924273891e+144
Results
48.0ms416×body256valid
1.0msbody256infinite
Compiler

Compiled 1029 to 580 computations (43.6% saved)

regimes265.0ms (2%)

Counts
32 → 4
Calls
Call 1
Inputs
(/.f64 a c)
(/.f64 a d)
(/.f64 b c)
(neg.f64 (/.f64 a c))
(/.f64 (neg.f64 a) d)
(*.f64 (/.f64 -1 c) (neg.f64 a))
(*.f64 (/.f64 -1 d) (neg.f64 a))
(*.f64 (/.f64 b d) (/.f64 c d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 (/.f64 c d) d) b)
(/.f64 b (/.f64 d (/.f64 c d)))
(/.f64 c (/.f64 d (/.f64 b d)))
(/.f64 c (/.f64 (*.f64 c c) b))
(/.f64 c (/.f64 (*.f64 d d) b))
(/.f64 (/.f64 c (/.f64 d b)) d)
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(neg.f64 (/.f64 d (*.f64 c (/.f64 c a))))
(neg.f64 (/.f64 (/.f64 a c) (/.f64 c d)))
(neg.f64 (/.f64 (/.f64 d (/.f64 c a)) c))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(-.f64 (/.f64 b c) (*.f64 a (/.f64 (/.f64 d c) c)))
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
(-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
(neg.f64 (*.f64 (*.f64 (/.f64 a 1) (/.f64 (/.f64 1 c) c)) d))
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Outputs
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
Calls

5 calls:

63.0ms
b
60.0ms
c
59.0ms
d
52.0ms
a
25.0ms
(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Results
AccuracySegmentsBranch
66.3%3a
66.1%5b
83.9%4c
86.9%4d
74.9%3(/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d)))
Compiler

Compiled 299 to 115 computations (61.5% saved)

bsearch49.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
17.0ms
333.3210933680268
1756884779.7485166
14.0ms
-5.312079363839999e-142
-2.86756516969223e-144
18.0ms
-2.2204154861833864e+69
-8.77546393135132e+60
Results
44.0ms400×body256valid
1.0msbody256infinite
Compiler

Compiled 822 to 515 computations (37.3% saved)

regimes356.0ms (2.6%)

Counts
31 → 3
Calls
Call 1
Inputs
(/.f64 a c)
(/.f64 a d)
(/.f64 b c)
(neg.f64 (/.f64 a c))
(/.f64 (neg.f64 a) d)
(*.f64 (/.f64 -1 c) (neg.f64 a))
(*.f64 (/.f64 -1 d) (neg.f64 a))
(*.f64 (/.f64 b d) (/.f64 c d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 (/.f64 c d) d) b)
(/.f64 b (/.f64 d (/.f64 c d)))
(/.f64 c (/.f64 d (/.f64 b d)))
(/.f64 c (/.f64 (*.f64 c c) b))
(/.f64 c (/.f64 (*.f64 d d) b))
(/.f64 (/.f64 c (/.f64 d b)) d)
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(neg.f64 (/.f64 d (*.f64 c (/.f64 c a))))
(neg.f64 (/.f64 (/.f64 a c) (/.f64 c d)))
(neg.f64 (/.f64 (/.f64 d (/.f64 c a)) c))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d))
(-.f64 (/.f64 b c) (*.f64 a (/.f64 (/.f64 d c) c)))
(-.f64 (/.f64 b c) (*.f64 (/.f64 d c) (/.f64 a c)))
(-.f64 (/.f64 b c) (/.f64 d (*.f64 (/.f64 c a) c)))
(/.f64 (*.f64 c b) (+.f64 (*.f64 d d) (*.f64 c c)))
(neg.f64 (*.f64 (*.f64 (/.f64 a 1) (/.f64 (/.f64 1 c) c)) d))
(neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d)))
(/.f64 (*.f64 a (neg.f64 d)) (+.f64 (*.f64 d d) (*.f64 c c)))
Outputs
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)
Calls

4 calls:

183.0ms
a
78.0ms
c
51.0ms
b
38.0ms
d
Results
AccuracySegmentsBranch
66.1%11a
61.0%4b
81.4%3c
83.0%3d
Compiler

Compiled 265 to 99 computations (62.6% saved)

bsearch33.0ms (0.2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
17.0ms
333.3210933680268
1756884779.7485166
16.0ms
-1.3377223740499185e-36
-7.0830128327013855e-40
Results
30.0ms272×body256valid
0.0msbody256infinite
Compiler

Compiled 502 to 323 computations (35.7% saved)

regimes632.0ms (4.7%)

Counts
22 → 3
Calls
Call 1
Inputs
(/.f64 a c)
(/.f64 a d)
(/.f64 b c)
(neg.f64 (/.f64 a c))
(/.f64 (neg.f64 a) d)
(*.f64 (/.f64 -1 c) (neg.f64 a))
(*.f64 (/.f64 -1 d) (neg.f64 a))
(*.f64 (/.f64 b d) (/.f64 c d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 (/.f64 c d) d) b)
(/.f64 b (/.f64 d (/.f64 c d)))
(/.f64 c (/.f64 d (/.f64 b d)))
(/.f64 c (/.f64 (*.f64 c c) b))
(/.f64 c (/.f64 (*.f64 d d) b))
(/.f64 (/.f64 c (/.f64 d b)) d)
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(neg.f64 (/.f64 d (*.f64 c (/.f64 c a))))
(neg.f64 (/.f64 (/.f64 a c) (/.f64 c d)))
(neg.f64 (/.f64 (/.f64 d (/.f64 c a)) c))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
Outputs
(/.f64 (neg.f64 a) d)
(/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c)
(/.f64 (neg.f64 a) d)
Calls

4 calls:

360.0ms
a
170.0ms
b
56.0ms
c
30.0ms
d
Results
AccuracySegmentsBranch
61.1%8a
61.4%9b
75.4%3c
76.2%3d
Compiler

Compiled 165 to 70 computations (57.6% saved)

bsearch35.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
18.0ms
1756884779.7485166
111356435520116600.0
17.0ms
-1.3377223740499185e-36
-7.0830128327013855e-40
Results
31.0ms272×body256valid
1.0msbody256infinite
Compiler

Compiled 417 to 289 computations (30.7% saved)

regimes274.0ms (2%)

Counts
21 → 3
Calls
Call 1
Inputs
(/.f64 a c)
(/.f64 a d)
(/.f64 b c)
(neg.f64 (/.f64 a c))
(/.f64 (neg.f64 a) d)
(*.f64 (/.f64 -1 c) (neg.f64 a))
(*.f64 (/.f64 -1 d) (neg.f64 a))
(*.f64 (/.f64 b d) (/.f64 c d))
(*.f64 (/.f64 c d) (/.f64 b d))
(*.f64 (/.f64 (/.f64 b d) d) c)
(*.f64 (/.f64 (/.f64 c d) d) b)
(/.f64 b (/.f64 d (/.f64 c d)))
(/.f64 c (/.f64 d (/.f64 b d)))
(/.f64 c (/.f64 (*.f64 c c) b))
(/.f64 c (/.f64 (*.f64 d d) b))
(/.f64 (/.f64 c (/.f64 d b)) d)
(neg.f64 (*.f64 (/.f64 (/.f64 a c) c) d))
(neg.f64 (/.f64 d (*.f64 c (/.f64 c a))))
(neg.f64 (/.f64 (/.f64 a c) (/.f64 c d)))
(neg.f64 (/.f64 (/.f64 d (/.f64 c a)) c))
(/.f64 (/.f64 (neg.f64 d) c) (/.f64 c a))
Outputs
(/.f64 (neg.f64 a) d)
(/.f64 b c)
(/.f64 (neg.f64 a) d)
Calls

4 calls:

102.0ms
b
80.0ms
a
51.0ms
d
36.0ms
c
Results
AccuracySegmentsBranch
59.4%9a
55.4%7b
69.2%3c
69.8%3d
Compiler

Compiled 156 to 68 computations (56.4% saved)

bsearch59.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
42.0ms
1756884779.7485166
111356435520116600.0
17.0ms
-1.3377223740499185e-36
-7.0830128327013855e-40
Results
55.0ms272×body256valid
1.0msbody256infinite
Compiler

Compiled 315 to 238 computations (24.4% saved)

regimes43.0ms (0.3%)

Counts
4 → 3
Calls
Call 1
Inputs
(/.f64 a c)
(/.f64 a d)
(/.f64 b c)
(neg.f64 (/.f64 a c))
Outputs
(/.f64 a d)
(/.f64 b c)
(/.f64 a d)
Calls

4 calls:

25.0ms
c
10.0ms
d
4.0ms
b
4.0ms
a
Results
AccuracySegmentsBranch
42.5%1a
42.5%1b
45.1%3c
46.8%3d
Compiler

Compiled 37 to 24 computations (35.1% saved)

bsearch54.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
11.0ms
2.3506171672087714e+164
1.3063926430274057e+165
43.0ms
-6.465981003816698e+117
-2.008392604684576e+113
Results
52.0ms224×body256valid
Compiler

Compiled 250 to 185 computations (26% saved)

regimes38.0ms (0.3%)

Accuracy

Total -7.6b remaining (-14%)

Threshold costs -7.6b (-14%)

Counts
2 → 3
Calls
Call 1
Inputs
(/.f64 a c)
(/.f64 a d)
Outputs
(/.f64 a d)
(/.f64 a c)
(/.f64 a d)
Calls

4 calls:

22.0ms
c
9.0ms
d
3.0ms
b
3.0ms
a
Results
AccuracySegmentsBranch
10.6%1a
10.6%1b
13.7%2c
15.3%3d
Compiler

Compiled 30 to 22 computations (26.7% saved)

bsearch27.0ms (0.2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
23.0ms
1.4708408328267314e+32
5.07713932005045e+37
4.0ms
-8.77546393135132e+60
-7.17876438863535e+60
Results
25.0ms176×body256valid
Compiler

Compiled 202 to 149 computations (26.2% saved)

simplify53.0ms (0.4%)

Algorithm
egg-herbie
Rules
42×+-commutative
42×*-commutative
26×sub-neg
18×neg-mul-1
18×neg-sub0
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01331304
11891288
22241288
32391288
42461288
52471288
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a)))
(if (<=.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) -2000000000000000027892227608239848875948331713973276662224188341819360978852261087276817026157211448419590306798994022928930976947274441820681149515165893814064695493653429650468157899728643681221664311148496427387162969229963912192655884288) (+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))) (if (<=.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) 49999999999999997990838700394884966306179965866660791642559438972038274233224047478954738152480007945403339428690378003153531301288658660066937768081850142259483599048726809116347987831785023273225189328871239835991361038587494628380365594466675565382886953520237123630792704) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a)))))
(if (<=.f64 c -116000000000000008115732718241355157691277837349102647368165233149030972822706936939730929415478653990469632) (*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 a (/.f64 c d)) (neg.f64 b))) (if (<=.f64 c -120884733920065/58968162887836583628774290327941701420576894069006881693378223441337877537377325813845730080900918242835443359855685076558915384842574884883772410178635875682021801984) (+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))) (if (<=.f64 c 1941185018244923/136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a))))))
(if (<=.f64 d -4999999999999999916795901115958608572801861375087352681835038072302342087505062772657389384729693708756186941721815525337672536740822868667327551851630428160) (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (if (<=.f64 d -2219120988980937/10086913586276986678343434265636765134100413253239154346994763111486904773503285916522052161250538404046496765518544896) (+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))) (if (<=.f64 d 56000000) (fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))))
(if (<=.f64 d -29999999999999999061648523025317792442531696476907296615914263960963973225365257898969304001787672895785536451103497382835750166803163151679700391165952) (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (if (<=.f64 d -6455624695217271/40347654345107946713373737062547060536401653012956617387979052445947619094013143666088208645002153616185987062074179584) (+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))) (if (<=.f64 d 3100) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))))
(if (<=.f64 d -1549999999999999920861783783134207150752101941163461078710835468042240) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (if (<=.f64 d -7963165285751507/27459190640522438859927603196325572869077741200573221637577853836742172733590624208490238562645818219909185245565923432148487951998866575250296113164460228608) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (if (<=.f64 d 30500) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))))
(if (<=.f64 d -2993155353253689/5986310706507378352962293074805895248510699696029696) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (if (<=.f64 d 15000) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)))
(if (<=.f64 d -7901930132589739/5986310706507378352962293074805895248510699696029696) (/.f64 (neg.f64 a) d) (if (<=.f64 d 16000000000) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (/.f64 (neg.f64 a) d)))
(if (<=.f64 d -933864470215151/47890485652059026823698344598447161988085597568237568) (/.f64 (neg.f64 a) d) (if (<=.f64 d 17000000000000000) (/.f64 b c) (/.f64 (neg.f64 a) d)))
(if (<=.f64 d -900000000000000031501480314784254116821399074169926212858148969533449894454444984218110844518550088696691068965486592) (/.f64 a d) (if (<=.f64 d 540000000000000011192354621912919260969861472411874871314794643843276782513351274535471216080743182949554282514043773568997449187196016470454193895455695907644768256) (/.f64 b c) (/.f64 a d)))
(if (<=.f64 d -8500000000000000640226419554599071162905459680735337908273152) (/.f64 a d) (if (<=.f64 d 46999999999999995352942090043405631488) (/.f64 a c) (/.f64 a d)))
(/.f64 a c)
Outputs
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 (/.f64 b (hypot.f64 c d)) c) (*.f64 (/.f64 d (hypot.f64 c d)) a)))
(*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (*.f64 c (/.f64 b (hypot.f64 c d))) (*.f64 (/.f64 d (hypot.f64 c d)) a)))
(if (<=.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) -2000000000000000027892227608239848875948331713973276662224188341819360978852261087276817026157211448419590306798994022928930976947274441820681149515165893814064695493653429650468157899728643681221664311148496427387162969229963912192655884288) (+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))) (if (<=.f64 (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) 49999999999999997990838700394884966306179965866660791642559438972038274233224047478954738152480007945403339428690378003153531301288658660066937768081850142259483599048726809116347987831785023273225189328871239835991361038587494628380365594466675565382886953520237123630792704) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a)))))
(if (<=.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 d a)) (+.f64 (*.f64 c c) (*.f64 d d))) -2000000000000000027892227608239848875948331713973276662224188341819360978852261087276817026157211448419590306798994022928930976947274441820681149515165893814064695493653429650468157899728643681221664311148496427387162969229963912192655884288) (+.f64 (/.f64 (neg.f64 a) (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) d)) (/.f64 c (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) b))) (if (<=.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 d a)) (+.f64 (*.f64 c c) (*.f64 d d))) 49999999999999997990838700394884966306179965866660791642559438972038274233224047478954738152480007945403339428690378003153531301288658660066937768081850142259483599048726809116347987831785023273225189328871239835991361038587494628380365594466675565382886953520237123630792704) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 c b) (*.f64 d a)) (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a)))))
(if (<=.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 d a)) (+.f64 (*.f64 c c) (*.f64 d d))) -2000000000000000027892227608239848875948331713973276662224188341819360978852261087276817026157211448419590306798994022928930976947274441820681149515165893814064695493653429650468157899728643681221664311148496427387162969229963912192655884288) (-.f64 (/.f64 c (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) b)) (/.f64 a (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) d))) (if (<=.f64 (/.f64 (-.f64 (*.f64 c b) (*.f64 d a)) (+.f64 (*.f64 c c) (*.f64 d d))) 49999999999999997990838700394884966306179965866660791642559438972038274233224047478954738152480007945403339428690378003153531301288658660066937768081850142259483599048726809116347987831785023273225189328871239835991361038587494628380365594466675565382886953520237123630792704) (*.f64 (/.f64 1 (hypot.f64 c d)) (/.f64 (-.f64 (*.f64 c b) (*.f64 d a)) (hypot.f64 c d))) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a)))))
(if (<=.f64 c -116000000000000008115732718241355157691277837349102647368165233149030972822706936939730929415478653990469632) (*.f64 (/.f64 1 (hypot.f64 c d)) (+.f64 (/.f64 a (/.f64 c d)) (neg.f64 b))) (if (<=.f64 c -120884733920065/58968162887836583628774290327941701420576894069006881693378223441337877537377325813845730080900918242835443359855685076558915384842574884883772410178635875682021801984) (+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))) (if (<=.f64 c 1941185018244923/136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a))))))
(if (<=.f64 c -116000000000000008115732718241355157691277837349102647368165233149030972822706936939730929415478653990469632) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (/.f64 a (/.f64 c d)) b)) (if (<=.f64 c -120884733920065/58968162887836583628774290327941701420576894069006881693378223441337877537377325813845730080900918242835443359855685076558915384842574884883772410178635875682021801984) (+.f64 (/.f64 (neg.f64 a) (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) d)) (/.f64 c (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) b))) (if (<=.f64 c 1941185018244923/136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a))))))
(if (<=.f64 c -116000000000000008115732718241355157691277837349102647368165233149030972822706936939730929415478653990469632) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 (/.f64 a (/.f64 c d)) b)) (if (<=.f64 c -120884733920065/58968162887836583628774290327941701420576894069006881693378223441337877537377325813845730080900918242835443359855685076558915384842574884883772410178635875682021801984) (-.f64 (/.f64 c (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) b)) (/.f64 a (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) d))) (if (<=.f64 c 1941185018244923/136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (*.f64 (/.f64 1 (hypot.f64 c d)) (-.f64 b (*.f64 (/.f64 d (hypot.f64 c d)) a))))))
(if (<=.f64 d -4999999999999999916795901115958608572801861375087352681835038072302342087505062772657389384729693708756186941721815525337672536740822868667327551851630428160) (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (if (<=.f64 d -2219120988980937/10086913586276986678343434265636765134100413253239154346994763111486904773503285916522052161250538404046496765518544896) (+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))) (if (<=.f64 d 56000000) (fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))))
(if (<=.f64 d -4999999999999999916795901115958608572801861375087352681835038072302342087505062772657389384729693708756186941721815525337672536740822868667327551851630428160) (-.f64 (*.f64 (/.f64 c d) (/.f64 b d)) (/.f64 a d)) (if (<=.f64 d -2219120988980937/10086913586276986678343434265636765134100413253239154346994763111486904773503285916522052161250538404046496765518544896) (+.f64 (/.f64 (neg.f64 a) (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) d)) (/.f64 c (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) b))) (if (<=.f64 d 56000000) (fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))))
(if (<=.f64 d -4999999999999999916795901115958608572801861375087352681835038072302342087505062772657389384729693708756186941721815525337672536740822868667327551851630428160) (-.f64 (*.f64 (/.f64 c d) (/.f64 b d)) (/.f64 a d)) (if (<=.f64 d -2219120988980937/10086913586276986678343434265636765134100413253239154346994763111486904773503285916522052161250538404046496765518544896) (-.f64 (/.f64 c (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) b)) (/.f64 a (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) d))) (if (<=.f64 d 56000000) (fma.f64 -1 (/.f64 (/.f64 a (/.f64 c d)) c) (/.f64 b c)) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))))
(if (<=.f64 d -29999999999999999061648523025317792442531696476907296615914263960963973225365257898969304001787672895785536451103497382835750166803163151679700391165952) (-.f64 (*.f64 (/.f64 b d) (/.f64 c d)) (/.f64 a d)) (if (<=.f64 d -6455624695217271/40347654345107946713373737062547060536401653012956617387979052445947619094013143666088208645002153616185987062074179584) (+.f64 (neg.f64 (/.f64 a (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) d))) (/.f64 c (/.f64 (+.f64 (*.f64 d d) (*.f64 c c)) b))) (if (<=.f64 d 3100) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))))
(if (<=.f64 d -29999999999999999061648523025317792442531696476907296615914263960963973225365257898969304001787672895785536451103497382835750166803163151679700391165952) (-.f64 (*.f64 (/.f64 c d) (/.f64 b d)) (/.f64 a d)) (if (<=.f64 d -6455624695217271/40347654345107946713373737062547060536401653012956617387979052445947619094013143666088208645002153616185987062074179584) (+.f64 (/.f64 (neg.f64 a) (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) d)) (/.f64 c (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) b))) (if (<=.f64 d 3100) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))))
(if (<=.f64 d -29999999999999999061648523025317792442531696476907296615914263960963973225365257898969304001787672895785536451103497382835750166803163151679700391165952) (-.f64 (*.f64 (/.f64 c d) (/.f64 b d)) (/.f64 a d)) (if (<=.f64 d -6455624695217271/40347654345107946713373737062547060536401653012956617387979052445947619094013143666088208645002153616185987062074179584) (-.f64 (/.f64 c (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) b)) (/.f64 a (/.f64 (+.f64 (*.f64 c c) (*.f64 d d)) d))) (if (<=.f64 d 3100) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))))
(if (<=.f64 d -1549999999999999920861783783134207150752101941163461078710835468042240) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (if (<=.f64 d -7963165285751507/27459190640522438859927603196325572869077741200573221637577853836742172733590624208490238562645818219909185245565923432148487951998866575250296113164460228608) (/.f64 (-.f64 (*.f64 b c) (*.f64 a d)) (+.f64 (*.f64 c c) (*.f64 d d))) (if (<=.f64 d 30500) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))))
(if (<=.f64 d -1549999999999999920861783783134207150752101941163461078710835468042240) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (if (<=.f64 d -7963165285751507/27459190640522438859927603196325572869077741200573221637577853836742172733590624208490238562645818219909185245565923432148487951998866575250296113164460228608) (/.f64 (-.f64 (*.f64 c b) (*.f64 d a)) (+.f64 (*.f64 c c) (*.f64 d d))) (if (<=.f64 d 30500) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d))))
(if (<=.f64 d -2993155353253689/5986310706507378352962293074805895248510699696029696) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (if (<=.f64 d 15000) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d)))
(if (or (<=.f64 d -2993155353253689/5986310706507378352962293074805895248510699696029696) (not (<=.f64 d 15000))) (/.f64 (-.f64 (*.f64 c (/.f64 b d)) a) d) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(if (<=.f64 d -7901930132589739/5986310706507378352962293074805895248510699696029696) (/.f64 (neg.f64 a) d) (if (<=.f64 d 16000000000) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c) (/.f64 (neg.f64 a) d)))
(if (or (<=.f64 d -7901930132589739/5986310706507378352962293074805895248510699696029696) (not (<=.f64 d 16000000000))) (/.f64 (neg.f64 a) d) (/.f64 (-.f64 b (/.f64 d (/.f64 c a))) c))
(if (<=.f64 d -933864470215151/47890485652059026823698344598447161988085597568237568) (/.f64 (neg.f64 a) d) (if (<=.f64 d 17000000000000000) (/.f64 b c) (/.f64 (neg.f64 a) d)))
(if (or (<=.f64 d -933864470215151/47890485652059026823698344598447161988085597568237568) (not (<=.f64 d 17000000000000000))) (/.f64 (neg.f64 a) d) (/.f64 b c))
(if (<=.f64 d -900000000000000031501480314784254116821399074169926212858148969533449894454444984218110844518550088696691068965486592) (/.f64 a d) (if (<=.f64 d 540000000000000011192354621912919260969861472411874871314794643843276782513351274535471216080743182949554282514043773568997449187196016470454193895455695907644768256) (/.f64 b c) (/.f64 a d)))
(if (<=.f64 d -8500000000000000640226419554599071162905459680735337908273152) (/.f64 a d) (if (<=.f64 d 46999999999999995352942090043405631488) (/.f64 a c) (/.f64 a d)))
(/.f64 a c)
Compiler

Compiled 519 to 258 computations (50.3% saved)

soundness232.0ms (1.7%)

Rules
1870×associate-*l/
1790×associate-/r*
1196×distribute-lft-in
962×associate-/l/
832×associate-/r/
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01358
129556
2444056
01487
130781
2436081
Stop Event
node limit
node limit
Compiler

Compiled 276 to 79 computations (71.4% saved)

end105.0ms (0.8%)

Compiler

Compiled 475 to 135 computations (71.6% saved)

Profiling

Loading profile data...